Time-based graphical user interface for multimedia content

ABSTRACT

A graphical user interface (“GUI”) for a content management system is provided, such as to present information associated with various forms of multimedia content. In some situations, the GUI includes information presented simultaneously using at least first and second time scales, such as to provide relatively detailed information for content corresponding to a shorter time scale (e.g., to display content listings with details about content that corresponds to a time period at the shorter time scale) and to provide relatively limited information for content corresponding to a longer time scale (e.g., indications of other content of potential interest corresponding to times outside the time period of the shorter time scale). In addition, in some situations the relatively limited information for content corresponding to the longer time scale may be selectable by the user to provide various functionality related to that content.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application claims the benefit under 35 U.S.C. § 119(e) ofU.S. Provisional Patent Application Ser. No. 60/567,177, entitled“Browser For Multimedia Content,” filed Apr. 30, 2004, which isincorporated herein by reference in its entirety.

The present application is also related to U.S. patent application Ser.No. ______ (Attorney Docket # 931086.409), entitled “Time-BasedGraphical User Interface For Television Program Information” and filedconcurrently, which is hereby incorporated by reference in its entirety.

TECHNICAL FIELD

The present disclosure generally relates to techniques for reviewing,manipulating and presenting content, such as to manage multimediacontent via a time-based graphical user interface (“GUI”) of a computingdevice.

BACKGROUND INFORMATION

In the current world of television, movies, and related media systems,many consumers receive television programming-related content viabroadcast over a cable network to a television or similar display, withthe content often received via a set-top box (“STB”) from the cablenetwork that controls display of particular television (or “TV”)programs from among a large number of available television channels,while other consumers may similarly receive televisionprogramming-related content in other manners (e.g., via satellitetransmissions, broadcasts over airwaves, over packet-switched networks,etc.). In addition, enhanced television programming services andcapabilities are increasingly being provided to consumers, such as theability to receive television programming-related content that isdelivered “on demand” using Video on Demand (“VOD”) technologies (e.g.,based on a pay-per-view business model) and/or various interactive TVcapabilities. Consumers generally subscribe to services offered by acable network “head-end” or other similar content distribution facilityto obtain particular content, which in some situations may includeinteractive content and Internet content.

Consumers of content are also increasingly using a variety of devices torecord and control viewing of content, such as via digital videorecorders (“DVRs”) that can record television-related content for laterplayback and/or can temporarily store recent and current content toallow functionality such as pausing or rewinding live television. A DVRmay also be known as a personal video recorder (“PVR”), hard diskrecorder (“HDR”), personal video station (“PVS”), or a personaltelevision receiver (“PTR”). DVRs may in some situations be integratedinto a set-top box, such as with Digeo's MOXI™ device, while in othersituations may be a separate component connected to an STB and/ortelevision. In addition, electronic programming guides (“EPGs”) areoften made available to aid consumers in selecting a desired program tocurrently view and/or to schedule for delayed viewing. Using an EPG anda DVR, a consumer can cause a desired program to be recorded and canthen view the program at a more convenient time or location.

However, as the cable industry grows and as additional types of contentare increasingly being stored and made available to consumers, it isbecoming increasingly difficult for consumers to effectively manage thecontent and the related capabilities of the various devices that areavailable. Moreover, the proliferation of networked presentation deviceswithin homes (e.g., televisions, handheld and desktop computing systems,stereos, speakers, cell phones, etc.) makes the task of effectivelymanaging the content, including its presentation via the variousdevices, even more difficult.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an embodiment of a content management(“CM”) system environment that can provide a time-based GUI to managecontent.

FIGS. 2-27 and 29-31 show example embodiments of a GUI for a contentmanagement system.

FIG. 28 is a flowchart of an embodiment of a routine for generating andoperating embodiments of a time-based GUI.

Non-limiting and non-exhaustive embodiments are described with referenceto the figures, wherein like reference numerals refer to like partsthroughout the various views unless otherwise specified.

DETAILED DESCRIPTION

Techniques are described below for managing various types of content invarious ways, such as via a time-based graphical user interface (“GUI”)of a Content Management (“CM”) system executing on a computing device.In some embodiments, at least some of the content being managed includestelevision programming-related content, with the CM system receiving EPGinformation for the content (e.g., via interactions with an STB). Insuch embodiments, the television programming-related content can then bemanaged via the CM system GUI in a variety of ways using a time-basedscheme, such as to allow a consumer to locate and identify content ofpotential interest, to schedule recordings of selected content, tomanage previously recorded content (e.g., to play or delete thecontent), to control live television, etc. In addition, the CM systemcan further manage various other types of contents and perform variousother types of content management functions, as described in greaterdetail below.

In at least some embodiments, the CM system GUI includes at least firstand second time scales, and simultaneously displays different types ofinformation related to content using the multiple time scales. Inembodiments in which the content includes television programming,various types of details may be provided about television programs withscheduled presentation times such that the programs will be availablefor display on one or more channels during the relatively short secondperiod of time, while indications of or other limited details may beprovided about other television programs of potential interest that willbe available for display during some or all of the relatively long firstperiod of time. In embodiments in which the content includes one or moreof various other types of content that has associated time-basedinformation (e.g., photographs, music, video clips, etc.), various typesof details may be provided about such content whose time-basedinformation corresponds to the relatively short second period of time,while indications of or other limited details may be provided aboutcontent whose time-based information corresponds to the relatively longfirst period of time. As discussed in greater detail below, varioustechniques are provided in various embodiments for displaying, sorting,identifying, filtering, and otherwise managing content using themultiple time scales and other GUI tools.

For illustrative purposes, some embodiments are described below in whichspecific types of content are managed in specific ways via specificexample embodiments of the CM system GUI. However, the techniques can beused in a wide variety of other situations, and that the invention isnot limited to the specific illustrative details discussed. Moregenerally, as used herein, multimedia “content” generally includestelevision programs, movies and other video information (whether stored,such as in a file, or streamed), photos and other images, music andother audio information (whether stored or streamed), presentations,video/teleconferences, videogames, Internet Web pages and other data,and other similar video or audio content.

Referring first to FIG. 1, a network diagram illustrates an example useof an embodiment of the CM system in a home environment 395 forentertainment purposes, although the CM system could similarly be usedin business or other non-home environments and for purposes other thanentertainment. In this example, the home environment includes an STB orother media center 350 receiving external content 360 a that isavailable to one or more consumers (not shown) in the home environment395, such as television programming-related content 360 a forpresentation on a television 370. Other types of audio and/or videocontent could similarly be received by and/or stored by the media center350 and presented to the consumer(s) on the television and/or optionalother content presentation devices 380 (e.g., other televisions, astereo receiver, stand-alone speakers, the displays of various types ofcomputing systems, a digital picture frame, etc.) in the homeenvironment 395.

The home environment 395 also includes an example computing system 300suitable for executing an embodiment of the CM system, as well as one ormore optional other local computing systems and/or storage devices 390with which the computing system 300 can interact via local network 385(e.g., a wireless or wired/cabled LAN). The computing system includes aCPU 305 or other processor(s), various I/O devices 310, storage 320, andmemory 330. The illustrated I/O devices include a display 311, a networkconnection 312, a computer-readable media drive 313, and other I/Odevices 315 (e.g., a keyboard, a mouse, a pointing device, speakers,etc.). In some embodiments the computing system 300 may further interactwith one or more external computing systems (not shown), such as via theInternet and/or the World Wide Web, such as to receive additionalexternal content 360 b and/or other information or services.

In the illustrated embodiment, the computing system 300 interacts withthe media center 350 in a variety of ways (e.g., via a directconnection, as part of local network 385, or as part of another network,not shown), including to receive information about current and/or futuretelevision programming-related content 360 a and/or other content 360 a.In this example, the information received by the computing system 300includes EPG metadata information for the television programming-relatedcontent (e.g., from a cable network operator), and can further include avariety of other types of metadata for the content 360 a, whether fromthe cable network operator or other third-parties (e.g., from variousexternal computing systems, not shown, such as via external content 360b). This received content metadata is then stored in a content metadatadatabase 322 (or other suitable data structure) in the illustratedembodiment for use by the CM system.

An embodiment of the CM system 335 is executing in memory 330. Asdiscussed in greater detail below, the CM system provides informationabout the available content to one or more users, such as via a GUIusing first and second time scales that is displayed on the displaydevice 311 and/or on one or more of the content presentation devices 370or 380 or other computing systems 390. For example, the CM system mayprovide some or all of the stored content metadata 322 to the users, andalso allow the user to manipulate the content in a variety of ways(e.g., to select content for current presentation, for future recording,etc.). As the user provides instructions related to manipulation of thecontent, those content manipulation instructions are in the illustratedembodiment stored in a database 324 (or other suitable data structure)on storage 320 for later retrieval and use by the CM system, and atleast some such content manipulation instructions may additionally insome embodiments be provided to the media center 350 for use in actuallyperforming the tasks to satisfy the manipulation instructions. Inaddition, in some embodiments the CM system may also interact with otherexecuting programs in order to provide additional information and/orfunctionality to the user(s), such as one or more optional executingother programs 339 in memory 330 or instead remote executing programs(not shown) on another computing system.

In the illustrated embodiment, the CM system does not itself present theexternal content 360 a to the user(s), instead interacting with themedia center 350 to control the display of the content to the user viathe TV and/or one or more of the other content presentation devices.However, in other embodiments the CM system may instead receive some orall of the external content 360 a, whether via the media center 350 orinstead directly from the source of that content, and if so coulddirectly control the presentation of that content to the user(s) on thedisplay device 311 and/or other content presentation device 370 or 380or other computing system 390. Conversely, in the illustrated embodimentthe computing system 300 and/or media center 350 may have access toadditional content, such as external content 360 b (e.g., from remotecomputing systems over the Internet), locally stored other content 360 con storage 320, and/or other locally accessible content (not shown),such as from one or more of the other computing systems/storage devices390—if so, the computing system 300 may in some embodiments directlypresent some or all of that content to the user(s), such as on displaydevice 311 (e.g., as part of the CM system GUI) and/or on one or moreother content presentation devices 370 or 380 or other computing system390, while in other embodiments may present some or all of that contentto the user(s) by instead interacting with the media center 350 tofacilitate the presentation (e.g., by providing the additional contentto be presented and/or associated instructions to the media center). Aspreviously noted, the additional content may be content related to theexternal content 360 a but from another source (e.g., additionaltelevision-related programming, such as streamed or downloaded over acomputer network) and/or multimedia content of other types (e.g., moviesand other video information, photos and other images, music and otheraudio information, presentations, video/teleconferences, videogames,Internet Web pages and other data, etc.).

The functionality of the CM system can be accessed in various ways indifferent embodiments. For example, some users may have physical accessto the computing system 300, and if so can interact with the various I/Odevices 310 to provide and/or receive information. Alternatively oradditionally, other users can use other client computing devices toremotely access the CM system, such as other local computing systems 390or instead remotely (e.g., via the Internet and/or the World Wide Web).Such remote users can use software or other functionality provided onthe client computing systems (not shown), such as a browser, to interactwith the CM system. In other embodiments, users may receivefunctionality and/or information from the CM system indirectly viainteractions with one or more other devices, such as the media center350, which may directly receive that functionality or information fromthe CM system before providing it to the users.

Computing system 300 is merely illustrative and is not intended to limitthe scope of the present invention. For example, the computing systemmay instead be comprised of multiple interacting computing systems ordevices, and may be connected to other devices that are not illustrated,including through one or more networks such as the Internet or via theWorld Wide Web (“Web”). More generally, the computing system maycomprise any combination of hardware or software that can perform thedescribed techniques, including (without limitation) desktop or othercomputers, network devices, Internet appliances, PDAS, cordless andother wireless phones, cellphones, devices with walkie-talkie and otherpush-to-talk capabilities, personal/digital video recorders, pagers,electronic organizers, television-based systems and various otherconsumer products. In addition, the functionality provided by theillustrated systems may in some embodiments be combined in fewer systemsor distributed in additional systems, and one or more of the systems mayeach have multiple components that each provides a portion of thefunctionality of that system. Similarly, in some embodiments thefunctionality of some of the illustrated systems may not be providedand/or other additional functionality may be available.

While various items are illustrated as being stored in memory or onstorage while being used, these items or portions of them can betransferred between memory and other storage devices, such as forpurposes of memory management and data integrity. Alternatively oradditionally, in other embodiments some or all of the software system(or portions of it) may execute in memory on another device andcommunicate with the illustrated computing system via inter-computercommunication. Some or all of the system or data structures (e.g.,portions of a database, such as one or more tables or views or portionsthereof used by the system may also be stored (e.g., as softwareinstructions or structured data) on a computer-readable medium, such asa hard disk, a memory, a computer network or other transmission medium,or a portable media article (e.g., a CD, DVD or flash memory device) tobe read by an appropriate drive or via an appropriate connection. Someor all of the system and data structures can also be transmitted viagenerated data signals (e.g., by being encoded in a carrier wave orotherwise included as part of an analog or digital propagated signal) ona variety of computer-readable transmission mediums, includingwireless-based and wired/cable-based mediums, and can take a variety offorms (e.g., as part of a single or multiplexed analog signal, or asmultiple discrete digital packets or frames). Such computer programproducts may also take other forms in other embodiments. Accordingly,one or more embodiments may be practiced with other computer systemconfigurations.

FIGS. 2-27 illustrate examples of information and capabilities providedby an embodiment of the CM system. More particularly, features of anexample GUI are shown and described, including a variety of informationand user-selectable controls in the context of multiple time scalesprovided in the GUI. While specific layouts and formats are shown inFIGS. 2-37, such specific details are not intended to be limiting orexhaustive.

FIG. 2 illustrates a GUI 100 with a variety of displayed information anduser-selectable controls. In the current example, the GUI is displayingprogram listing information for live TV in a view area 140, with thedisplayed listings initially based on a current time 195. The TVlistings in the view area 140 are initially shown in a grid format, withcolumns of the grid corresponding to successive time units of thirtyminutes each and with each row corresponding to a different TV channelthat may show one or more TV programs during the displayed time period.The GUI also includes a variety of other areas, including a menu bar 105with dropdown menus, primary content-type navigation tabs 110, secondarycontent-type-specific navigation tabs 115, a view control area 125 thatincludes view and filter controls 120 and time controls 130, a detailarea 150, a status bar 155, and a status control sidebar area 170 thatincludes virtual remote control functionality 160 and a user-focusedcontent summary area 165.

As will be described in further detail below, the view control area 125also includes a first timebar 128 that corresponds to a relatively longfirst time period at a first time scale (which is selected based in partusing time controls 130) and that may in certain situations displaylimited information about content, while the view area 140 illustratesdetailed information about content for a relatively short second timeperiod at a second time scale. In this example, the first time scalecorresponds to approximately 16 hours (with the current first timeperiod being from 8 am to 12 am of the next day, as shown in the firsttimebar 128), and the second time scale corresponds to approximately 3½hours (with the current second time period being a first time periodsubset of 9:30 am to 12:30 pm, as shown in a second timebar 140 arendered at the top of the view area 140). In addition, in this exampledetails about televisions programs shown in the view area 140 include,for example, program title (e.g., “The Transporter”), year of release(e.g., “2002”), and rating information (e.g., “PG-13” and a three-starrating)—various other types of details could similarly be shown, such asinformation about actors and/or other people associated with the program(e.g., director, producer, etc.), a textual summary of the plot, whetherthe program is closed captioned and/or broadcast in stereo, whether theprogram is a repeat, etc. In this example, the first timebar does notdisplay any limited information about any television programs or othercontent.

FIG. 3 illustrates a similar view to that shown in FIG. 2, but withadditional channels shown in the view area 140. For the sake ofsimplicity and clarity, the labels for the various components of the GUI100 are not repeated in FIG. 3 and in the subsequent figures, exceptwhere appropriate to provide context or where otherwise helpful todescribe the embodiments. In the example of FIG. 3, a user has used ascroll bar 149 to scroll to additional channel listings, although inother embodiments and/or situations the display could instead be changedin other manners. As is illustrated, the primary content-type navigationtab for “Television” 110 a continues to be currently selected, thesecondary content-type-specific navigation tab for “Live TV” 115 acontinues to be currently selected, and a “Grid” view control 121continues to be currently selected.

In a similar manner, FIG. 4 displays program listing informationsimilarto that of FIG. 3, but for a later second time period. Inparticular, the second timebar rendered at the upper portion of the viewarea 140 indicates that the second time scale has remained atapproximately 3½ hours, but that the current second time period haschanged to correspond to times from approximately 11 am to 2 pm—thefirst time scale and first time period reflected in the first timebar inthe view control area have not changed, however. In this example, a userhas used a timebar scroll control 136 below the first timebar to changethe currently selected time for the second timebar to begin at 11 am,resulting in the program listing information shown in the view area 140to change to reflect the times for the second timebar—the actual currenttime 195, however, remains unchanged. In this example embodiment, thetimebar scroll control 136 includes a textual display of the currentlyselected time of “FRI 11:00”, corresponding to a change in this exampleto 11:00 AM later in the same day, and the second time scale of the viewarea 140 renders a breakdown of time segments in ½ hour increments after11:00 AM, with the remainder of the view area 140 rendering programlistings for each of the broken-down time segments to indicate programswhose presentation times make them available for presentation during thetime segment (e.g., based on the programs having start times at thebeginning of the time segment). In other embodiments and/or situations,a new time could instead be selected in other manners, such as bymanually selecting a specified point on the first timebar (e.g., byclicking a left mouse button while the mouse cursor is above the desiredtime), or instead by manipulating the second timebar in various ways(e.g., by manually selecting a displayed specified point on the secondtimebar, by dragging the second timebar so as to select a time that wasnot previously displayed on the second timebar, etc.). Moreover, in someembodiments times may further be displayed and manipulated in othermanners, such as to include a horizontal scroll bar for the view area(e.g., at the bottom of the view area and above the detail area) toallow program listing information at other times to be selected.Modifications using the horizontal scroll bar may not only modify thecurrent second time period for the second timebar, but in at least someembodiments may also affect the first timebar in various ways, such asby causing the first timebar scroll control 136 (or “thumb”) to updateto reflect the new start time of the second time period, and further inat least some embodiments changes made via the first timebar mayconversely cause at least portions of the view area to be updated (e.g.,the second time period for the second timebar and/or the horizontalscroll bar).

In FIGS. 2-4, the first timebar in the view control area has beendisplayed using a linear hour-based representation for a multi-hour timefirst time scale, with the displayed units on the first timebarcorresponding to hours and fractions of hours. This hour-based timescale and view corresponds to time control 132 shown in FIG. 5, which inthis example embodiment has an icon that includes a representation of aclock. However, the first timebar display in FIG. 5 has been updated toreflect user selection of a day-based time control 133, with therepresentation of the first timebar now showing successive days andfractions of days as part of a new multi-day first time scale.Nonetheless, the currently selected time for the TV listing display of11:00 AM on Friday has not changed, and thus the second timebar of theview area 140 continues to show program listings for the same secondtime period at the same second time scale. While not illustrated here,the GUI could similarly include controls to display the first timebarusing other first time scales, such as weekly or monthly.

FIG. 6 next corresponds to a similar display after the “Now” timecontrol 131 was selected, causing the currently selected time in thesecond timebar of the view area 140 to revert to a time corresponding tothe current time 195, with the newly selected current time in thisexample being the beginning of the half-hour segment of time to whichthe current time belongs (e.g., the half-hour period beginning at 9:30AM, as shown by the textual display of the timebar scroll control 136,for the current time 195 of 9:57 AM). The second time period of thesecond time bar now begins at 9:30 am, and the corresponding programlistings in the view area 140 now provide the 9:30 AM and onward programlistings corresponding to half-hour segments for the second time period.

As previously described above with reference to FIG. 4, the user canselect (such as by clicking or mouse-over) any time indicated in thefirst timebar for a specific day, and then the second time period shownin the second timebar and the corresponding program listings in the viewarea 140 are updated to present the program listings for the selectedtime and afterwards. Moreover, the scroll bar 149 can be used to scrollup or down in the grid display in the view area 140 for the selectedtime, so as to view the various television program listings for eachparticular television channel. Also, the grid display in the view area140 can be modified in various other ways, such as by arranging thechannels in descending order (not shown) by clicking on a “CH” channelnumber column heading control 141 in FIG. 6. As is shown, a smalltriangle is currently displayed in the column heading to indicate thatthe current display reflects an ascending order that is sorted bychannel number, but selection of the control 141 would cause the smalltriangle to change to point down and would cause the channels to besorted in descending order by channel number (e.g., by first displayinga largest available channel 998, followed by a next available channel945, etc.). The same information can be sorted in ascending ordescending alphabetical order based on the displayed name of thechannel, such as by selecting a “NAME” column heading control 142 inFIG. 6 (e.g., as shown in FIG. 8). While not illustrated here, in otherembodiments additional similar types of controls and sorting could bemade available, such as by sorting channels alphabetically based on thenames of current programs being shown at a selected time (e.g., byclicking on a time-segment column heading in the grid corresponding tothat time).

In addition, different programs can be listed using different colors,display patterns (e.g., shading) and/or amounts of highlighting toprovide various types of information about the programs, and in at leastsome embodiments the shapes of program indications may further changefor various purposes, such as to indicate various program-relatedattributes. In particular, such differing visual representations can beused to illustrate different types of TV programs (and/or differences inand/or between different types of content) in some embodiments. FIG. 7illustrates examples of differing types of visual representations thatmay be mapped to different types of programs (e.g., by default) via adropdown menu that shows several predefined types of filters, which inthis example was displayed based on user selection of a filter controlbutton 126. For example, the color red can be assigned to programs ofthe type “movie,” the color green can be assigned to programs of thetype “sports,” and programs of type “news,” “music,” or “kids” may nothave colors assigned to them. Furthermore, each row may in someembodiments be displayed using a different visual representation thanthe preceding row to assist in readability.

In addition, FIG. 7 also illustrates that the second timebar 140 a hasbeen modified so that the second time scale now corresponds to just over4 hours (with a current second time period of 12 pm to past 4 pm), suchas automatically based on an amount of space to display program detailinformation of interest for current programs being smaller than anamount of space for programs illustrated in prior figures. Similarly,the first timebar 128 has also been modified so that the first timescale now is longer (with a current first time period of 7 days), suchas automatically based on the change to the second time scale and/or forother reasons. In addition, the first and/or second time scales may alsobe automatically modified in other situations in at least someembodiments, such as if the view area 140 decreases (e.g., due to GUIwindow 100 being resized to a smaller size, or due to another windowarea such as the status control sidebar area 170 being expanded) and thesecond time scale are second timebar are automatically changed so thatprograms beginning at 3:30 PM, 4:00 PM and 4:30 PM are no longervisible, or if the view area 140 increases. Moreover, with changes tothe second time period displayed in the second timebar, the channelsthat are displayed may again be updated to reflect only those channelsthat include programs matching the current filter during the currentlydisplayed second time period.

Using the filter control button 126, which in the illustrated embodimentcauses a dropdown list to be displayed to allow the user to select oneor more currently defined filters, the user can select the “movies”filter, for example, which would limit the channels (not shown)displayed in the view area 140 to those that are showing at least onemovie during the currently displayed second period of time for thesecond timebar. For example, the status control sidebar area 170 of FIG.8 reflects that 92 channels (for example) match the “movies” filter whenselected, as contrasted with 293 channels (for example) that wereavailable when no filter was selected in FIG. 7.

FIG. 8 further illustrates that a particular one of the displayedprogram listings in the view area 140 has been selected, which in thisexample is the “Dances With Wolves” program beginning at 1:00 PM onchannel 5 HBO—in the example embodiment, the selection of and the statusof the program as being the currently selected program is shown by asuitably colored line (e.g., green) around the outside of the programlisting in the view area 140 (e.g., a selection rectangle 171 or othersuitable navigation or selection element). Moreover, in at least someembodiments a separate visual representation (e.g., a dashed line) maybe shown for a program that currently is a “focus” of attention, such asbased on a current cursor of focus location, which may be movedindependently of the currently selected program. More generally, in atleast some embodiments the “focus” may be moved to any interactivescreen elements, while the “selector” visual representation may be usedonly with a selected piece of content. In some situations, a singlepiece of content may be both the focus and the currently selectedcontent piece, such as if a piece of content is specified as the focusand then selected. In addition, once the program has been selected, thedetail area 150 is updated to display various additional detail metadatainformation about the selected program, such as a description of theprogram, information about cast and crew, information about one or moregenres (e.g., Western) of the program, information about one or moreratings of the program, etc. In addition, a control 152 has been enabledto allow a selection to be made to schedule the program to be recorded.While not shown here, a variety of additional types of informationand/or functionality could also be shown in the detail area, such asdata obtained from third-party sources (e.g., a trailer for the movie,or extra content such as deleted scenes) and/or the ability to selectadditional services (e.g., providing additional content), such as for afee.

A different filter can similarly be selected to limit the programlistings in the view area 140, such as the “Sports” filter or otheravailable filters, although the results of such a selection are notillustrated here. Such selection of a different filter may cause avariety of changes, such as in some embodiments to cause the statuscontrol sidebar area 170 to indicate a different number of channelshaving programs that match the filter and/or to provide such informationin another manner (e.g., near the filter selection control and/or thetime controls 130), and to update the view area 140 to display onlychannels having programs that match the filter during the second timeperiod and/or to display only the matching program listings during thesecond time period. If a currently selected program is no longer shownin the updated view area 140, (e.g., to not display the “Dances WithWolves” program when a “Sports” filter is selected since the program isnot content of type “Sports”), the detail area will nonetheless continueto show information pertaining to that currently selected program in atleast some embodiments. In addition, the various previously discussedcontrols for altering the display continue to be available when showinga filtered view of the TV program. For example, filtered sports programscan be sorted in ascending channel number order, such as by selectingthe “CH” column heading to sort the channels that offer sportsprogramming.

As with non-filtered views, the information about filtered sportsprograms (or any other filtered view) may be modified by the user invarious ways. For example, a new current selected time may be chosen byselection within the first timebar, such as by changing the currentselected time to 12:00 PM noon on Sunday, and with the second timeperiod displayed for the second timebar changed to show sports programlistings on 12:00 PM noon onward on Sunday for the filtered channelsthat offer sports programming during that second time period. Aspreviously discussed, only the channels that have programs matching thecurrent filter during the currently displayed second time period will beshown in the view area 140 in at least some embodiments, and thus theset of channels that are displayed in the view area 140 may be changedbased on changes to the second time period, since some channels may notoffer sports programming during a particular second time period.Moreover, the current selected time may also be changed in at least someembodiments and situations by user selection of a “Find In View” control158, such as when the currently selected program “Dances With Wolves” isnot currently visible in the current program display of the view area140, as selection of the control causes the second time period andcorresponding current program display in the view area 140 to beadjusted so that the currently selected program is displayed, includingchanging the currently selected time as needed, even though the programdoes not match the current “Sports” filter. In addition, if a currentlyselected predefined or custom filter does not have a distinct associatedcolor or other visual representation (e.g., for the “News” filter), theprograms displayed in the view area 140 may in some embodiments be shownwith their default colors but with the programs that match the currentfilter being displayed using highlighting so as to distinguish them fromother programs displayed (or by similarly dimming or otherwise modifyingthose other programs).

In addition, in at least some embodiments users may each create one ormore custom filters that can then be applied to restrict the TV programsthat are displayed. For example, creation of such custom filters mayinclude selection of one or more user-selectable filter criteria andspecification of corresponding matching values for the criteria, such asto select one or more program genres, people in the cast or crew,specific words in the title and/or description, specific ratings,programs that appear on specific channels, programs that are notrepeats, programs that are in HDTV format, programs that have specifiedaudio-visual options, programs that are scheduled for recording, etc. Asone specific example, a user may create a custom filter for programs inthe “Science Fiction” genre and with the word “Star” in the title. Forthe sake of brevity, these example filter customization features are notshown or described in detail herein. Instead, the reader is requested torefer to the parent provisional patent application, if desired, foradditional information, such as with respect to FIGS. 1R-1Y andcorresponding text. After one or more custom filters are created, anupdated dropdown menu (not shown) can be generated for the filtercontrol 126, with the new custom filter(s) now present in the dropdownlist as available filters that can be selected and applied. The viewarea 140 would then, after the new custom filter is selected, displayresults in a manner to that previously discussed with respect topredefined filters—for example, if there are no programs during thecurrently displayed second time period that match the filter, thecurrent view area 140 may in some embodiments be displayed as blank,while in other embodiments the user may be presented with a warning orother information so that they understand why the view area is blank. Inaddition, in at least some embodiments predefined and/or customuser-defined filters may be selected and modified in various ways, suchas to change criteria and/or to rename the filter.

FIG. 9 illustrates one example of how additional information may beprovided to users in the first timebar 128 when a filter is beingapplied, with the first timebar in this example embodiment includingsmall colored (e.g., red) graphical indications 137 to identify timesduring which programs matching the current filter occur. This allows auser to easily see times at which matching programs occur that do notcorrespond to the current program display for the second time period, aswell as to select one of these times (such as by directly clicking oneof the indicators 137) to see details about the matching programs atthat time in the view area 140 and/or the detail area 150. Thus, FIG. 9corresponds to the prior display after a new time has been selected,such as by selecting the time of 6 am on Sunday based on the firsttimebar having an indicator showing that one or more programs at thattime match the current filter. The resulting updated view area 140display shows that four channels have programs that match the appliedcustom filter during a corresponding second time period beginning at 6am on Sunday.

FIG. 10 next illustrates the results after the user has selected the“Find A Program” search control 127 b to initiate a search for programsmatching specified criteria. In particular, in this example anadditional collapsible search area 135 is displayed in response thatallows a user to specify various search criteria, with a “Quick Search”capability being selected by default. The Quick Search capability allowsthe user to specify one or more terms to search for, one or more genresto search for, whether to limit the search to programs that have beenscheduled to be recorded, whether to exclude or hide programs that arerepeats of previously shown programs, whether to limit the search toprograms that are in high-definition TV (“HDTV”) format, etc. In thisexample, the user has selected to look for programs that include theterm “Stargate” in the “Science Fiction” genre. FIG. 10 also illustratesan additional “Manage Filters” control 127 a, such as to provide apop-up filter management window.

After the user selects the “Apply” control in the search area 135 toperform the search specified in FIG. 10, the results of the search maybe displayed in the view area 140 (not shown). For example, the initialresults may not include any programs at the currently displayed timeperiod, and thus the view area 140 may be initially blank for thecurrently displayed time period. However, the first timebar maysimilarly be used to provide graphical indicators 137 at times at whichany programs that satisfy the search occur, and if a new time isselected from the first timebar (such as by clicking one of theindicators 137 or by other using other functionality of the timecontrols 130), the view area 140 can be updated to display channelshaving programs matching the specified search at the selected new time.After the user next selects the “Save” control in the search area 135,the user is allowed to save the previously specified search as a newcustom filter. For instance, in this example a new pop-up window (notshown) can be displayed to the user to allow specification of a name forthe new custom filter, which may subsequently be included in an updateddropdown menu (not shown) for the filter control 126 as an availablefilter that can be selected and applied.

After saving the previously specified search as a new custom filter, theuser then selects the “Advanced Search” tab in the search area 135, andFIG. 11 displays the results of that selection—in other embodiments, the“Advanced Search” tab would similarly display such information even ifthe previously specified search is not saved, such as based on applyinga filter, doing a quick search, applying a search from the searchhistory, etc. In particular, in the illustrated embodiment the searcharea is modified to allow the user to select one or more of a variety ofsearch criteria in a manner similar to that previously discussed withrespect to filter creation. In this example, the criteria selections inthe search windows are initially set to correspond to the previouslyspecified search, although those selections can be modified or removedby the user. The user can also select the “Search History” tab todisplay information about the previously applied searches (not shown),such as with a list of entries that are user-selectable such that theuser can select one of the previous searches and then use the “Apply”control to again apply that search for the currently selected time—insome embodiments such previous searches may include only searchesperformed during use of the current instantiation of the GUI, while inother embodiments such state information may be saved from pastexecutions of the CM system (e.g., for all past searches, a specifiednumber of past searches, for user-indicated searches), and may furtherin at least some embodiments be saved and presented in a user-specificmanner. For example, in this illustrated embodiment the user hasselected the previously specified search from the search history listcorresponding to programs that include the term “Stargate” in the“Science Fiction” genre, with the results of the specified search beingdisplayed in the view area 140 for the current second time period, andwith the first timebar providing limited information for programs thatmatch the current search during the first time period (e.g., graphicalindicators to indicate presence of such programs). When the user isfinished, he/she can next select the “Clear” control of FIG. 11 to clearthe currently specified filter/search parameters, and then select the“Close” control to hide the search area 135.

If the user selects a new displayed program, which in the example ofFIG. 12 is the “Seinfeld” program episode beginning at 8:00 PM onchannel 9 FOX, the detail area 150 is modified to reflect the newlyselected program. In addition, in the illustrated embodiment, the userfurther selects the newly selected program in such a manner as todisplay a pop-up menu 148 that provides additional functionality withrespect to the newly selected program (e.g., by right-clicking on thedisplayed listing for the program). In this example embodiment, thepop-up menu includes functionality to allow the user to record thisepisode (“Record Once”), to record multiple episodes of this program(“Record Series”), as well as to perform various other functions.

In particular, one of the additional types of functionality availablevia the pop-up menu 148 is to change the size at which the informationin the view area 140 is displayed, and as is shown in FIG. 13, the userin this example is able to select to change the current display sizefrom “Small” to “Medium” or to “Large.” If the “Medium” or “Large”selections are made, the view area 140 would be modified to showadditional details (e.g., an abbreviated narrative or episode title)about each of programs that are displayed (e.g., in larger “cells”containing the program information), resulting in less programs beingshown due to the larger size of the display information. The resultantsize of the cells due to the resizing may further in some embodimentsresult in the first and/or second time periods being automaticallychanged and/or the first and/or second time scales being changed.

FIG. 14 then shows results after the user has selected theuser-selectable information of the name of the actor “Jerry Seinfeld” inthe detail area 150. In particular, performing that selection in theexample embodiment causes the search area 135 to be displayed and tohave the user-selected information added to the portion of the searchcorresponding to search terms. After applying the new search (e.g., byselecting the “Apply” control in the search area), the results of thenew search would be shown in the view area 140, and limited informationfor any matching programs would be added to the first timebar.Alternatively or additionally in FIG. 14, the user can select theuser-selectable genre information of “Sitcom” in the detail area 150,causing the genre portion of the search area 135 to be populated withthe data “Sitcom.” The user in this example may further select the “HideRepeats” search criteria in the search area 135 and then apply the newsearch, with the results in the view area 140 having repeated listingshidden (not shown). The user can also display the current search historyafter the prior search has been applied, such as based on a usersubsequently selecting the “Search History” control tab of the searcharea 135. Regardless of the search or sorting mechanism used, the GUIcan display information using an appropriate first time scale andappropriate second time scale that are correlated to results of thesearching and sorting.

FIG. 15 shows an embodiment after the user has closed the search area135 (e.g., by selecting the “Close” control in that area), has closedthe sidebar status control area 170 (e.g., by using a vertical controlbar 173 in the sidebar control area 170 that is just to the right ofchannels 8 and 9 in FIG. 15), and has closed the detail area 150 byselecting the “Hide Details” control in the detail area 150. Thus, afterperforming these closures, most of the GUI 100 is devoted to displayingprogram listings in the view area 140, with the first and secondtimebars rendered accordingly (e.g., by automatically selectingappropriate first and second time scales and first and second timeperiods).

FIG. 16 then shows the results of re-displaying the detail area 150 andthe sidebar status control area 170, with the lower information area 165of the sidebar status control area 170 shown in expanded view (e.g., byselecting an expand/collapse control for that area 165, which in thisexample embodiment is an up/down triangle arrow icon 167 in the upperright corner of that area 165). In this example embodiment, theinformation area 165 includes information about the current status ofselected content, including content being currently recorded (if any),recently recorded programs, and upcoming scheduled recordings. In someembodiments, some or all such content may be user-selectable from thearea 165, such as to allow the user to specify to play previouslyrecorded content. The upper area 160 and/or the lower area 165 of thesidebar status control area 170 can be expanded or collapsed as desiredby the user. In addition, in some embodiments the first timebar may befurther modified to reflect information in the sidebar status controlarea 170 (not shown), such as to provide visual indicators of upcomingtimes at which some (e.g., a selected one) or all of scheduledrecordings in the information area 165 will occur.

In FIG. 17, the program that is currently on channel 24 TVLAND entitled“Gunsmoke” has been selected to be currently recorded. The newlyselected program has corresponding information displayed in the detailarea 150, and a status icon is shown in various places to indicate thestatus of the program as being currently recorded, such as in thisexample embodiment being illustrated with a red circle or other icon169. In particular, the recording icon is shown in this example with theprogram listing information in the view area 140, in the detail area150, and in the information section 165 of the sidebar status controlarea 170. In addition, the available controls in the detail area 150have been modified to include a “Cancel Recording” control (since theselected program is being recorded) and a “Watch Now” control (since thecurrently selected program is currently available for presentation).

As previously discussed, FIGS. 2-17 have displayed various informationabout television program listing information in a variety of ways.However, while the program listing information display has been modifiedin various ways, all of the displayed information has corresponded to asingle type of view for the program listing information. In particular,and as previously noted, the program listing information has beendisplayed in a 2-D grid format, which corresponds to the prior selectionof the grid view control 121.

FIG. 18 corresponds to a change in the type of view used for the programlisting information, and in particular corresponds to a view of theprogram listing information in iconic format after selection of an iconview control 122. In this example, the program listing information inthe view area 140 is shown in a small size, such as based on the smallsize being the initial default size for the icon view or being aprevious size used with a view (e.g., the previous use of the icon view,or in some embodiments based on the prior grid-based view being in thesmall size). In this example icon view, information about the channelnumbers, names, and station names is displayed, but information aboutspecific programs available at the currently selected time is not shown.The iconic view of program listing information can also be displayed ata medium or large size (not shown) to show more detail information, suchas the name of the program at the currently selected time, the timeperiod during which the program is displayed, rating, genre, and soforth. This change in size can be performed in a variety of ways, suchas via a selection from a pop-up menu (not shown) in the view area,selection of a dropdown menu (not shown) using the triangle arrowcontrol on the right side of the icon view control 122, etc. Since thedisplayed information in the view area 140 in the illustrated embodimentcorresponds only to the currently selected time (or to no time), in thisembodiment the second timebar is not shown, although in otherembodiments the second timebar may be shown (e.g., if different iconicinformation is shown for different time segments).

If a particular program listing is selected as the current program, thenthe detail area 150 will be populated with information about the newlyselected current program. In addition, a pop-up menu (not shown)corresponding to the selected program can be displayed, such as based onthe user performing a right-click action on the selected program, withthe pop-up menu allowing various actions to be taken with respect to theselected program (e.g., to select the program to be watched on anassociated television or other video output device if the currentlyselected program is currently being shown). In other embodiments, othertypes of functionality could similarly be provided in such a pop-upmenu.

As with embodiments in which the program listings are shown in gridformat, the user can use the filter control 126 to filter theinformation displayed in the view area 140 (whether for predefined orcustom filters), and the first timebar may display visual indicationscorresponding to matching programs. For instance, FIG. 19 shows theresults of applying a custom filter for programs in the “ScienceFiction” genre and with the word “Star” in the title, and of selecting acurrent time from the first timebar that has at least one matchingprogram (e.g., based on selecting a point along the timebar having anindicator 137 to indicate the presence of matching programs). In thisexample, the newly selected time is Wednesday at 5:00 PM, and sixchannels are shown in the view area as having matching programs at thattime.

FIG. 20 then illustrates a change in the current view based on selectionof the channel view control 123, as well as based on clearing thepreviously selected filter. In this view, channel and programinformation for a variety of channels is shown in the main left portionof the view area 140, while an additional right portion 146 of the viewarea 140 is displayed containing additional channel-specific informationfor a currently selected channel. In particular, in the current examplechannel number 5 for the currently selected program “The Last Days” isselected as the current channel 144 in the left portion of the view area140, and the channel-specific portion 146 contains information about anumber of different programs that are available on that currentlyselected channel over a third period of time that in this examplecorresponds to approximately the next day and a half. While the timesalong the left side of the right portion 146 are not illustrated as adistinct timebar in the illustrated embodiment, in other embodiments athird timebar may be displayed along that left side. In addition, whilethe second timebar is not displayed in the illustrated embodiment, inother embodiments the second timebar may additionally be displayed, suchas to show program information for multiple channels in a grid format inthe left portion of the view area while continuing to shown theadditional channel-specific information for a single channel in theright portion 146. Therefore in this embodiment, the first time scalecorresponds to several days, a third time scale for the third timeperiod represented in the channel-specific portion 146 corresponds tohours over a period of approximately 1½ days, and a second time scalefor a second timebar (not shown) may correspond to a shorter secondperiod of time (e.g., 1 hour or 4 hours, such as in a manner similar totimes displayed in the “AIRS” column 143 b). The detail area 150displays information pertaining to the selected program from thechannel-specific portion 146, such as information pertaining to anupcoming program listed therein that airs after the program on thecurrently selected channel 144.

The user can also select “Find In View” functionality for a currentlyselected program while using the channel view, such as via the button158 in the detail area 150 or instead based on a pop-up menu (not shown)for the currently selected program listing in the channel-specific area146—such functionality is similarly available in the other views in atleast some embodiments. For example, if a new program has been selectedfrom the channel-specific portion that is not displayed in the currentprogram listing information in the left portion of the view area (e.g.,to select the “Chris Rock Show” at 7:30 pm on Tuesday) and the “Find InView” functionality is selected, the view area 140 information will beupdated to show program information corresponding to the time of thecurrently selected program. If a different channel is selected in theview area 140 as the currently selected channel 144, the program on thatchannel at the currently selected time becomes the currently selectedprogram in the illustrated embodiment, and the detail area 150 isupdated to provide information about that program. Similarly, thechannel-specific area 146 of the view area may be updated to includeinformation about the newly selected channel.

As with embodiments in which the program listings are shown in grid andicon views, the filter control 126 can be used with the channel view tofilter the information to be displayed in the view area 140 (whether forpredefined or custom filters), and the first timebar may display visualindications corresponding to matching programs. Moreover, the size ofthe view can be switched to a medium size or a large size (or in someembodiments to any desired size for this and/or the other views), suchas based on selection of an appropriate control on a pop-up menu in theview area (not shown) or instead based on use of a dropdown menu via thetriangle arrow in the right portion of the channel view control 123. Theprogram listings at the medium size, for example, may contain additionaldetail information relative to those listings at the small size, and useof a large size can display further detail information about the programlistings being shown.

FIG. 21 displays example results of selecting a custom filter forprograms in the “Science Fiction” genre and with the word “Star” in thetitle, and of selecting a new currently selected time of 5:00 PM onWednesday (such as by clicking a corresponding indicator 137 in thefirst timebar) that has six program listings matching the filter.Channel number 5 continues to be the currently selected channel based onthe currently selected program “The Last Days,” despite that currentlyselected program not being currently displayed. Additionally, in someembodiments the channel listings may be sorted in various ways, such asin ascending order or descending order based on the channel numbers,based on channel names, based on air times of currently displayedprograms (e.g., by default or instead based on selection of the “AIRS”column heading 143 b), based on names of currently displayed programs,etc.

FIG. 22 then displays the results of switching to a list view of theprogram listings, such as based on selection of the list view control124. In the current example, the program listings are shown sorted inascending order based on the title of the programs, such as by defaultor instead based on user selection of the “PROGRAM TITLE” column heading143 a. In this example embodiment, at least some of the program listingsmay have multiple showings at different times, and some or all of theprogram titles can be expanded to show details of each of the showingsfor that program title. For example, with respect to the currentlyselected program “The Last Days,” that program listing is currentlyshown in an expanded view 147 so as to provide information about each ofthe five showings of that program that are currently available over anupcoming period of time (e.g., the next 2 weeks).

In this example embodiment, a program title listing can be expanded invarious ways, such as by selecting a small icon to the left of each ofthe program listings in order to expand or collapse that programlisting, or instead using a pop-up menu (not shown) for that programlisting, such as based on a right-click selection of the programlisting. In addition or in the alternative, a pop-up menu (not shown) inthe view area 140 can allow all program listings to be collapsed orexpanded, as well as to change the sorting for program listings. If theuser selects an “Expand All” control functionality or other similarfunctionality from a pop-up menu, the resulting listing will include allprogram information in expanded form in the view area 140. In addition,while the program listing groups here are illustrated based on programtitles, in other embodiments the program listings may be grouped in avariety of other manners, such as based on any one or more associatedmetadata value or other attribute.

As with embodiments in which the program listings are shown in otherviews, the filter control 126 may in at least some embodiments be usedwith the program listing view to filter the information to be displayedin the view area 140 (whether for predefined or custom filters). Whilethe times in the “AIRS” column for an expanded program listing are notillustrated as a distinct timebar in the illustrated embodiment, inother embodiments one or more fourth timebars may be displayed withexpanded program listing information (e.g., a distinct fourth timebarfor each expanded program listing). In addition, while the first timebaris not displayed in the illustrated embodiment, in other embodiments thefirst timebar may additionally be displayed and may include visualindications corresponding to appropriate programs (e.g., programsmatching one or more specified filters and/or searches, or to illustrateupcoming showings of one or more programs, such as for a currentlyselected program and/or for one or more programs shown with expandedprogram listing information). Similarly, while the second timebar is notdisplayed in the illustrated embodiment, in other embodiments the secondtimebar may additionally be displayed, such as to display informationabout upcoming showings for one or more of the current programs in agrid format in the view area.

In addition, the program listings may be sorted in a variety of manners,with FIGS. 1BT-1CC from the parent provisional patent applicationshowing examples of sorting and grouping the program listing informationin a variety of ways. For instance, all of the program listinginformation may be shown in collapsed form and in a manner grouped andsorted by channel number in an ascending or descending manner, such asbased on user selection of the “CH” column heading. Examples of sortingand grouping of program listing information can include but not belimited to: in ascending or descending order based on channel name; in amanner grouped and sorted based on the recording status of the programlistings; in an ascending or descending order based on the air time ofthe program listings; in ascending or descending order based on durationof the program listing; in ascending or descending order based on thegenre of the program listings; in ascending or descending order based onthe rating of the program listings; in an ascending or descending orderbased on whether the program listings are repeat showings; in anascending or descending order based on whether the program listinginformation is displayed in HDTV format; in ascending or descendingorder based on the stars assigned to the program listings; and so forth.Further details of such grouping and sorting are provided in the parentprovisional patent application, and are abbreviated herein for the sakeof brevity. Also, while not illustrated here, the sorting of programlistings in some embodiments may also in at least some embodiments beperformed using multiple sort specifications (whether in a mannerspecific to a particular program listing or instead for all programlistings). For example, some or all of the program listings and/orprogram listing showings may be sorted first based on program title,then secondarily based on air time, and then tertiarily based on whetherthey are shown in HDTV format, or instead based on any other metadatavalues or other attributes and/or combination thereof.

Much of the previously discussed program listing information hascorresponded to content categorized as being available via livetelevision, such as based on a prior or default selection of a “LIVE TV”control 115 a. FIG. 23 corresponds to selection of an alternative typeof television-related content, which in this example includes TV programlistings that are scheduled to be recorded, such as based on selectionof the “SCHEDULED” control 115 b. In this example, only a single programlisting is scheduled to be recorded, which is the “Judge Joe Brown”program on channel 9 FOX at 11:30 am on Thursday, as illustrated in theview area 140 and in the “UPCOMING RECORDINGS” section of the controlstatus area. In addition, the scheduled TV program listing informationcan be manipulated in a manner similar to that of the live TV programlisting information, such as to be sorted in various ways and to havevarious filters applied, as well as to be displayed using other views inat least some embodiments. For example, the scheduled recordinginformation can be sorted in an ascending manner based on the air timeof the programs, rating, genre, and so forth.

Programs may be scheduled for recording in various ways, such as via apop-up menu (not shown) or other control that is provided regarding oneor more upcoming programs (e.g., as displayed using one or more of theviews for LIVE TV content) to give the user the option to record (orcancel recording of) a selected program. Information about a currentlyselected program may include a small red circle status icon or othericon (not shown), as previously described above, to indicate that theprogram is to be recorded, with the icon shown in the display for theprogram listing in the view area 140 and/or in the detail area 150. Inaddition, the information about the upcoming recordings can be shown andupdated in the sidebar status control area 170 to reflect a newlyscheduled recording. The SCHEDULED control 115 b, if subsequentlyselected, will also result in the presentation of the newly scheduledprogram to be recorded in the view area 140.

FIG. 24 next displays results of selecting the type oftelevision-related content corresponding to previously recorded TVprogram listings, such as based on selection of the “RECORDED TV”control 115 c. While not illustrated here, information for other groupsof television-related content can similarly be displayed in otherembodiments, such as information corresponding to pay-per-viewtelevision (e.g., by selection of the control 115 d), on-demandtelevision programs (e.g., by selection of the control 115 e), orvarious other types of television-related programming via appropriatecontrols (not shown), such as for interactive television, or moregenerally for any type of recorded or other content available forpresentation (e.g., by being stored on a local device or otherwiseretrievable). A pop-up menu (not shown) or other control can be used toprovide various functionality for one or more of the previously recordedcontent listings, such as to delete the recording, play the recording onone or more appropriate video output devices (e.g., a TV) beingcontrolled, and to find the program information for that program in thecurrent view. The detail area 150 in the illustrated embodiment alsoincludes a “PLAY” control button for the currently selected program, andthe status control sidebar 170 provides information about the programbeing currently played.

The recorded TV program listings and/or other content can also bemanipulated in a manner similar to that for the other program listinginformation, such as to be sorted in various ways and to have variousfilters applied, as well as to in some embodiments be displayed using ormore other views. For example, the program listing information may besorted based on the record time of the program listings (e.g., based onuser selection of the “RECORDED ON” column heading 143 j), or couldsimilarly be sorted based on a current status of the program listing,such as by user selection of the “STATUS” column heading 143 k. In theillustrated embodiment, program listings can be given a status ofrecorded, scheduled to be recorded, and not scheduled to be recorded,although in other embodiments a variety of additional types of statusinformation could be similarly assigned and used (e.g., currentlyrecording, scheduled to record once, scheduled to record the series ormultiple episodes, live and not recording, future and not scheduled,past shows that were not recorded, scheduled to record but did not,scheduled to record but not going to, recorded as a recommendation,locked to prevent deletion, subject to deletion, imminent deletion,previously viewed (for recorded and/or live programs), partially viewed,has additional associated content, has additional associatedfunctionality, has a user-specified annotation, etc.).

In some embodiments, the content listings shown in the view area 140 forany one or more of the content-type-specific navigation tabs 115 (e.g.,LIVE TV, SCHEDULED, RECORDED TV, PAY PER VIEW, and/or ON DEMAND) mayfurther be bifurcated or otherwise organized (not shown) based on one ormore devices connected to or otherwise associated with the CM system,such as one or more media centers 350, one or more computing systems390, or other input/output devices. For example, if there are multipleSTBs, DVRS, or other input/output devices (e.g., televisions) coupled tothe CM system, the view area 140 may present listing informationcorresponding to multiple of the devices (e.g., for two devices or forall devices), such as simultaneously in different portions of the viewarea. Thus, for instance, if two DVRs are connected to the CM system andeach is able to record content and/or has recorded content, then theview area 140 may separately or concurrently present the information foreach DVR. Program listings for multiple STBs can also be presented inthe view area 140 separately or concurrently, such as if these STBsreceive different EPG data.

In addition, the GUI may further in some embodiments provide distincttimebars for multiple of such devices (e.g., each device) in the GUI100, such as distinct first timebars and/or distinct second timebars,whether simultaneously or separately. Alternatively, in someembodiments, a single first timebar and/or second timebar may be usedfor multiple devices, but with the first timebar and/or second timebarsimultaneously displaying different information for each of the devices.Such simultaneous display of different information for each of multipledevices in a single timebar may be performed in various ways in variousembodiments, such as by having a single time period and time scale butusing different visual representations (e.g., different colors,different shapes, etc.) for displayed visual indicators and otherinformation for different devices, or to instead simultaneously displayin a single timebar different time periods for each of the devicesand/or information at different time scales for each of the devices(e.g., by bifurcating a timebar and showing one time scale on top andanother on bottom, or by selecting a single time scale that issufficiently large to include two or more distinct time periods). Thus,for example, a first timebar that is simultaneously displayinginformation for multiple devices may include visual indicators for eachof the devices, such as to correspond to programs that match differentfilters for each of the devices, to indicate upcoming scheduled programsto be recorded on each of the devices, to indicate different currentstatus for each of the devices (e.g., whether or not the device iscurrently recording a live program), etc.

In some embodiments, information that is displayed in the first and/orsecond timebars may further be represented in other manners thanpreviously described. For example, with respect to the first timebar,the displayed indicators of relevant content or of other types ofinformation may have a variety of other forms in other embodiments. Inparticular, in at least some of the previously discussed illustratedembodiments, an indicator displayed in the first timebar reflected thepresence of relevant content (e.g., content matching a specified searchor filter) at the time in the first time period that the indicator wasdisplayed, with the absence of such an indicator reflecting the absenceof any such relevant content. However, in other embodiments theindicator display may be modified in various ways to provide a varietyof other types of information. For example, in some embodiments thevisual representation of each of the indicators may be modified toprovide additional information about the relevant content that is beingrepresented, such as to indicate an amount of relevant content at anindicated time (e.g., by modifying the width of a displayed indicator inproportion to or otherwise based on the amount of relevant content, sothat an indicator reflecting five relevant movies on five channels atone time point is wider than another indicator reflecting only a singlerelevant movie at another time point). Similarly, the visualrepresentation of each of the indicators may be varied in other manners(e.g., color, height, shape, saturation, hue, brightness, etc.) toindicate a variety of other types of information, such as a degree ofrelevance of the corresponding content (e.g., a degree of match to afilter or a search), one or more ratings of the content, a priority ofthe content, etc.

In addition, in some embodiments the visual representation of at leastsome displayed indicators in the first timebar and/or of other aspectsof the GUI (e.g., the first timebar and/or second timebar) may bemodified in other manners, such as to allow customization of such visualelements. Such customization may be provided, for example, to allowpersonalization of information to a particular user (e.g., based onpreferences of the user, and whether in response to a request by theuser or in an automatic manner) and/or to a particular computing device(e.g., to display less information or to display information in a morelimited manner when the computing device has a limited display areaand/or limited display capabilities, such as for a cellphone or otherhandheld computing device). In addition, customization of multiplevisual elements at a time may be provided, such as to allow differentvisual “skins” or “themes” to be defined and used. Such use of differentskins or other visual customization features may be used in variousways, such as to enable branding by a commercial entity (e.g., for a feepaid by the commercial entity) of some or all portions of the GUI tosome or all users, such as by displaying a logo and/or color schemeassociated with the commercial entity (e.g., by displaying a logo in anon-functional portion of the GUI, such as the “Ambient” logo in theupper right portion of GUI 100 in FIG. 2, or instead in other manners,such as by modifying some or all of the visual indicators in the firsttimebar to display or otherwise reflect a logo).

In addition, a variety of additional information about relevant contentmay be displayed using indicators in the first timebar in other manners,such as upon some form of user selection of the displayed indicator.Such additional information about relevant content corresponding to adisplayed indicator may include the types of information discussed withrespect to previous examples, or more generally may include any metadata(e.g., EPG data) or other relevant information about a relevant piece ofcontent (e.g., descriptive textual information about a piece of content,a preview or portion of the content, information about other users' useor selection of the content, a user-specified or other “tag” or categoryassociated with the content, an indication of whether the content iscurrently selected and/or currently displayed in the view area, etc.),whether alternatively or in addition to detail information shown in theview area 140 and/or the detail area 150. User selection of a displayedindicator may include, for example, “mouse-over” of an indicator withouta mouse click (or other movement of a cursor over the indicator), withthe additional information presented in a manner similar to a pop-uptool tip window. Alternatively, a mouse click (e.g., a right mouseclick) may cause such additional information to be displayed in variousways (e.g., a pop-up window). In addition, corresponding types offunctionality may be provided for other types of input devices and usermanipulations.

In addition to providing additional information about relevant contentusing indicators in the first timebar, various types of functionalitymay similarly be provided in at least some embodiments upon some form ofuser selection of the displayed indicator. For example, as previouslyindicated, selection of a displayed indicator for a time point may causethat time point to become the currently selected time, with the secondtime period of the second timebar adjusted to display that currentlyselected time. In some embodiments, other types of functionality may beprovided for selection of a displayed indicator, whether in addition to(e.g., using a different type of selection than for specifying thecurrently selected time) or instead of specifying the currently selectedtime. For example, selection of an indicator may cause one or morecorresponding pieces of content to become the currently selected content(e.g., the currently selected television program, such as to causeinformation about that program to be displayed in the detail area 150),or may instead allow various types of capabilities to be provided forone or more such corresponding pieces of content (e.g., to schedule arecording, to initiate a current recording, to watch or manipulate apreviously recorded piece of content, etc.). Moreover, in at least someof the previously discussed illustrated embodiments the first and secondtimebars have been represented in a linear manner. In other embodiments,however, the first and/or second timebars may be represented in otherways, such as by using one or more icons.

FIGS. 25-27 illustrate examples of additional capabilities available viathe GUI 100 by using dropdown menus from the menu bar 105. Inparticular, FIG. 25 illustrates the dropdown menu available by selectingthe “File” menu control, which includes the ability to connect orotherwise associate the GUI with one or more particular STBs, DVRs orother devices with which to interact (e.g., from which to receiveprogram listing information and to which to send content manipulationinstructions). For example, choosing the “Active Device” selection fromthe File dropdown menu may result in a list of one or more availabledevices (not shown) from which to select, while choosing the “DisconnectDevice” selection from the File dropdown menu may result in a pop-upwindow (not shown) asking whether the user desires to connect to anotherdevice, although such a pop-up window may also be provided in otherembodiments and situations (e.g., if a connected device or theconnection to that device becomes unavailable). Choosing the “UpdateListings” selection from the File dropdown menu may result in retrievingupdated program listing information (e.g., if needed), and may furtherresult in display of a pop-up window (not shown) indicating that theupdated program listing information has been retrieved. Choosing the“Exit” selection from the File dropdown menu would cause the CMapplication to end.

FIG. 26 illustrates the dropdown menu available by selecting a “View”menu control, which includes the ability to select a current view toapply, as well as to select particular groups of the current contenttype for display. FIG. 27 then illustrates the results of selecting the“Timebar” selection control from the View dropdown menu, with anadditional submenu available to the user for selection to allow the userto select various first time scales for the first timebar (e.g.,multi-hour or multi-day), as well as to make the current time thecurrently selected time. In addition, while not illustrated here,various additional functionality may be available from other dropdownmenus. For example, a dropdown menu (not shown) available by selectingthe “Tools” menu control may include the ability to search for aprogram, to define a custom filter, to change a current color scheme,and to specify various options (e.g., via a pop-up window, not shown).Options may include controls, for example, to allow the user to selectthe style of the time line in the guide view (such as to select acondensed style); to show a visual vertical line or other indication inthe view pane through the channel listings to indicate a currentlyselected time; to specify a default master font for use in the GUI(e.g., with the user receiving an additional pop-up menu to allowspecification of the default master font); to limit the number of daysof program data to be displayed; to allow the status control sidebar tobe automatically hidden when not in use; to specify various informationabout connections to other devices at startup and periodicallyafterwards, and to specify various information about software andprogram listing update functionality. In addition, a dropdown menu (notshown) available by selecting the “Actions” menu control may include theability to control the recording and viewing of content, as well as toselect functionality to scan channels, and a dropdown menu (not shown)available by selecting the “Help” menu control may include the abilityto check for updates for the CM system and to receive additionalinformation and other help. Examples of at least some such additionalfunctionality are illustrated in the parent provisional patentapplication, such as with respect to FIGS. 4G-4N.

FIG. 28 is a flowchart 2800 of an embodiment of a routine for operatinga time-based GUI, such as for GUI 100 previously discussed with respectto FIGS. 2-27. In some embodiments and situations, the content displayedin the time-based GUI may correspond to television programming, such asto use EPG data, while in other embodiments and situations various othertypes of content may be displayed.

The routine begins at step 2802, where multimedia content metadata isreceived, such as if the computing system 300 receives EPG metadatainformation (i.e., as part of television programming-related content 360a) from a head-end and/or an Internet location, and then stores theinformation as content metadata 322 in the storage unit 320. At step2804, the GUI begins to be rendered on a suitable display device, suchas to render the GUI 100 on the display 311. The rendering processincludes rendering a first timebar at step 2806 and rendering a secondtimebar at step 2808. In at least some embodiments, the first and secondtimebars may be initially set to reflect default or user-specified firstand second time scales and/or first and second time periods,respectively, or to otherwise reflect specified display configurationinformation. Furthermore, in some embodiments the second time scaleand/or second time period are selected so as to correspond to a portionof the first time scale and/or first time period. At step 2810, the GUIis then populated with multimedia content listings that are presented toa user, such as based on the received metadata and in such a manner asto correspond to the second time period for the second timebar, as wellas optionally presenting various other types of information to the user.In addition, in some embodiments and situations one or more indicatorsmay be displayed in the first timebar to correspond to content listings,such as content listings that are not currently displayed due to beingoutside the second time period of the second timebar.

In the illustrated embodiment, the content listings remain rendered inthe GUI until a timeout occurs (e.g., to refresh the program contents,such as every few seconds or when a ½ hour or other time segment of thesecond time period has passed) or until the user selects functionalityto cause a change. When such a change is initiated, the routinecontinues to step 2811 to determine whether a timeout has occurred, andif so returns to step 2810 to modify the GUI accordingly (e.g., toupdate the first and/or second timebars with new time periods ifappropriate, and to update the content listing information in the GUI ifappropriate, such as for new time periods and/or to reflect new contentthat has become available). If it is instead determined in step 2811that a timeout did not occur and the change initiation is from a useraction, the routine continues to step 2812 to determine whether the userhas selected a portion of the first timebar that is different than thecurrently selected time (e.g., based on a displayed indicatorcorresponding to one or more content listings that are not currentlydisplayed), such as to cause a new second time period for the secondtime bar to be selected. If so, the routine continues to step 2814 toupdate the second timebar to reflect the new second time period, and theroutine then returns to step 2810 to update the content listings of theGUI to reflect the new second time period, as well as to optionallyupdate the first timebar if appropriate (e.g., to change the first timeperiod of the first timebar and/or to modify a display of indicatorscorresponding to content listings).

If it is instead determined in step 2812 that the change initiation isnot from user selection of the first timebar, the routine continues tostep 2813 to determine whether the user has manipulated the GUI so as toperform filtering or searching, and if so continues to step 2814 tomodify the second timebar if appropriate before continuing to step 2810to modify content listing and other displayed information accordingly.For example, at least some such actions may cause information to bedisplayed in the first timebar to provide indicators of content listingsthat are not currently visible during the second time period for thesecond timebar, such as actions to perform searches and to applyfilters. If it is instead determined in step 2813 that the user has notperformed a filtering or searching activity, the routine continuesinstead to perform another type of action indicated by the user (e.g.,sorting, scheduling or initiating a recording, etc.) in step 2816, andthen continues to step 2810 to update content listing and otherdisplayed information as appropriate.

In some embodiments the functionality provided by the routines discussedabove may be provided in alternative ways, such as being split amongmore routines or consolidated into fewer routines. Similarly, in someembodiments illustrated routines may provide more or less functionalitythan is described, such as when other illustrated routines instead lackor include such functionality respectively, or when the amount offunctionality that is provided is altered. In addition, while variousoperations may be illustrated as being performed in a particular manner(e.g., in serial or in parallel) and/or in a particular order, in otherembodiments the operations may be performed in other orders and in othermanners. In addition, in some embodiments certain operations may beembodied in software or other computer-readable instructions stored on acomputer-readable medium, such as software stored in the memory 330 ofthe CM system 335 of FIG. 1. The data structures discussed above mayalso be structured in different manners, such as by having a single datastructure split into multiple data structures or by having multiple datastructures consolidated into a single data structure. Similarly, in someembodiments illustrated data structures may store more or lessinformation than is described, such as when other illustrated datastructures instead lack or include such information respectively, orwhen the amount or types of information that is stored is altered.

In some embodiments, a variety of other types of content can similarlybe reviewed, manipulated, and controlled via a GUI, such as via theexample GUI 100. For example, in one example embodiment, the primarycontent-type navigation tabs 110 of FIG. 2 are available to allow theuser to select music content (e.g., via selection of the displayeduser-selectable “JUKEBOX” control), photos and/or images (e.g., viaselection of a displayed user-selectable “PHOTOS” control), and toobtain videophone functionality (e.g., via selection of a displayeduser-selectable “VIDEOPHONE” control)—in other embodiments, othersimilar types of controls may process access to other types of content,such as to access non-television video content via selection of adisplayed user-selectable “VIDEO” control. Selection of one of thedisplayed controls may cause information about corresponding content tobe displayed in the GUI, such as to update the view area 140 (or asimilar area of the GUI) to include content listings for thecorresponding content (e.g., to display various metadata about thecontent), to provide various additional details about a selected pieceof content via the detail area 150, to include graphical indicatorscorresponding to selected pieces of the content via the first timebar128, and to similarly update various other controls and areas of the GUI(e.g., the secondary content-type-specific navigation tabs 115, the menubar 105, the view control area 125, the status bar 155, the statuscontrol sidebar area 170, etc.). A variety of other types of content aresimilarly available, including advertisements, news clips, excerpts fromarticles, Internet content, presentations, videogames, etc.

These other types of content may be manipulated in a manner similar tothat described above for television programming-related content. Inparticular, various techniques have been described to organize andmanipulate content based on one or more times associated with thecontent, such as based on the start time at which a piece of televisionprogramming-related content may be available for presentation. Othertypes of content may similarly have one or more of various types ofassociated times with which the content may be accordingly manipulated.For example, music content may be associated with a record date andtime-of-day, a release date and time-of-day, a broadcast date andtime-of-day, a receipt/download date and time-of-day, and various othertime-related characteristic(s), and one or more of such associated timesmay be used to select pieces of music content to display in the viewarea 140 (e.g., based on those pieces of content each having anassociated time within a second time period associated with the secondtimebar) and to select pieces of music content for which graphicalindicators will be displayed in the first timebar (e.g., based at leastin part on those pieces of content each having an associated time withina first time period associated with the first timebar). Photos and videocan similarly have one or more associated times, such as creation dateand time-of-day, revision date and time-of-day, download date andtime-of-day, etc., and may similarly be displayed based on one or moreof such associated times. Other types of multimedia content may havesimilar time-related characteristics, and the GUI may be modifiedaccordingly to manage such content.

For example, FIG. 29 illustrates an example GUI that provides controlsto manage photos using time-related characteristics of the photos. Inthe illustrated embodiment, a portion 100 a of an example GUI isillustrated, with a “PHOTO” primary content-type navigation tab 110being currently selected. Accordingly, appropriate secondarycontent-type-specific navigation tabs 115 are illustrated (which in thisexample are “CREATED,” “RECEIVED,” “DOWNLOAD,” and “SHARED”), and aportion 140 b of a view area is shown currently displaying metadatainformation regarding various photo sets. In particular, in this exampleembodiment the first timebar 128 illustrates a first period of time anda second timebar 140 a illustrates a shorter second period of time, withthe photos sets indicated in the view area each having at least oneassociated time that corresponds to the second time period (e.g., anassociated creation time, such as based on a current selection of the“CREATED” secondary content-type-specific navigation tab 115). The photosets may further be filtered in various ways (e.g., by genre and/orsubject) in order to highlight particular photos for easier discovery,with the photo sets in the illustrated embodiment being restricted tophoto sets corresponding to a “BIRTHDAY” filter selection 120 (e.g.,based on metadata for the displayed photo sets indicating abirthday-related connection).

FIG. 30 illustrates an example portion 100 a of a GUI that is similar tothat displayed in FIG. 29, but with alternative time scales for thefirst and second timebars. In particular, in FIG. 30 the first timebar128 illustrates a first time scale of several months, and the secondtimebar 140 a illustrates a second time scale corresponding to severaldays. A new “ANIMALS” filter control 120 is also currently selected(e.g., for a user-defined custom filter), and the portion 140 b of theview area displays metadata information regarding various photo setscorresponding to the second time period and filter. In the illustratedembodiment, selection of another of the secondary content-type-specificnavigation tabs would cause other types of time-related information thatis associated with photo sets to be used to select the photo setsmatching the second time period, such as to use times that photo setsare received, times that photo sets are downloaded, or times that photosets are shared. A variety of other types of time-related informationcould similarly be associated with photos and/or with other types ofcontent.

Thus, in at least some embodiments the GUI 100 includes first and secondtimebars that can be used to organize and manipulate listings and otherinformation for content of such other content types based on associatedtime information. For example, if a user downloads music on a regularbasis and/or music is broadcast according to a timed schedule (e.g., onone or more digital music channels provided by a cable-based orsatellite-based content provider), the view area 140 can display songtitles based on the download times in a manner corresponding to thesecond timebar. Moreover, the user can sort, group, filter, view, orotherwise manipulate the listings and other information using similartechniques as previously described above for television programlistings.

Moreover, while time-based organization and manipulation is useful formany types of content, in some embodiments at least some types ofcontent may be organized and manipulated based on other types ofassociated information, whether in addition to or instead of based ontime. For example, content with associated textual information (e.g., atitle or name, names of one or more associated people, etc.) may begrouped in the GUI alphabetically or otherwise based on that textualinformation, such as by modifying the first and/or second timebars tocorrespond to portions of the alphabet rather than periods of time(e.g., to display multiple segments in the second timebar that eachcorrespond to a distinct letter within a subset of letters from thealphabet, such as letters “C” to “H”, the vowel letters, etc.). Variousother types of metadata for content may similarly be used to group thecontent in other manners for organization and manipulation in the GUI,such as to group content hierarchically or based on other relationshipsbetween pieces of content if such relationships exist (e.g., based on aset of related photos from a single event or shoot, which may be one ofmany sets that are each associated with a higher-level organization orevent), to group content based on genre or other categorization (e.g.,for photos, images or video content, based on the device used to createthe content, on the person who created the content, on a source fromwhich the content was acquired, on subject matter of the content, onfile size, on black-and-white versus color, on number of pixels orframes-per-second or other measure of resolution, on display size of thecontent, on use restrictions on the content, etc.), or to more generallygroup the content based on any other parameter or combination of typesof parameters.

FIG. 31 illustrates an example GUI similar to that discussed withrespect to FIGS. 29 and 30, but with content (in this example photos)being organized and managed using content metadata in a manner otherthan based on time. In particular, in the example illustrated portion100 a of a GUI, photo sets are organized and managed in an alphabeticalmanner, with a second “alphabet” bar 140 c replacing the previouslyillustrated second timebar, and with the photosets indicated in the viewarea portion 140 b being indexed alphabetically. In some embodiments,various types of content metadata may be selected to be used as thebasis for the indicating (e.g., title, author, description, etc.), suchas via corresponding secondary content-type-specific navigation tabs 115(not shown) or analogous tertiary content-type-specific navigation tabs(not shown). In the illustrated embodiment, the previously illustratedfirst timebar has been replaced with a first “metadata type” bar 128 a,such as for use in selecting a metadata type and/or in displayinggraphical indicators for content in metadata type areas to which thecontent corresponds (e.g., in response to a filter that is applied, notshown). Photos may similarly be organized and managed in a variety ofways other than alphabetically or by time (e.g., based on hierarchicaland/or other associated between photos and photosets), and other typesof content can be handled similarly.

In a similar manner, but while not illustrated here, in some embodimentsthe GUI could be used to control a variety of devices, such as one ormore STBs, one or more DVRs, one or more TVs, one or more of a varietyof types of non-TV content presentation devices (e.g., speakers), etc.Thus, in at least some such embodiments, the GUI could be used toconcurrently play a first specified program on a first TV, play a secondspecified program on a second TV, play first specified music content ona first set of one or more speakers, play second specified music contenton a second set of one or more speakers, present photos or video on acomputing system display or other TV, etc. When multiple such devicesare being controlled, they could further be grouped and organized in avariety of ways, such as by location and/or by type of device (or typeof content that can be presented on the device). In addition, thevirtual remote control buttons displayed in the GUI could change basedon a current context, such as on the device that is currently beingcontrolled and/or based on content that is currently selected. Inaddition, extended controls of a variety of types beyond those discussedin the example embodiment (e.g., channel up and down, volume, akeyboard, device-specific controls, etc.) could additionally be providedvia the GUi in at least some embodiments. Moreover, in at least someembodiments all of the controls of the GUI may be selectable by one ormore of a variety of input device types, such as all being selectable bykeyboard, by voice command, by mouse, etc.

In addition, in some embodiments multiple pieces of content can besimultaneously selected and acted on in various ways, such as toschedule multiple selected TV programs to be recorded or deleted, togroup the pieces of content together for future manipulation, etc.Moreover, in some embodiments multiple users may interact with the samecopy of the CM system, and if so various user-specific information(e.g., preferences, custom filters, prior searches, prior recordings orviewings of programs, information for user-specific recommendations,etc.) may be stored and used to personalize the GUI and its informationand functionality for specific users. In addition, in embodiments inwhich the CM system is interacting with an external program, such as viaan STB or DVR that has its own user GUI (e.g., one that is displayed tousers on a television), additional integration between the CM system andthe STB or DVR may be possible, such as to include user-selectable linksor other references in the GUI of one of the systems to the other system(e.g., to allow a user to select the CM system from a menu or otherinformation displayed to a user by an STB or DVR). A variety of othertypes of related functionality could similarly be added, includingvarious manners in which one or more remote devices (e.g., a mediacenter) may initiate communications or other interactions with the CMsystem (e.g., based on events that occur on a remote device that arecommunicated to the CM system, such as system-generated events by amedia center device and/or by a user (whether the same or a differentuser than for the CM system) who is interacting with one or more remotedevices (e.g., a TV being controlled by a media center). Similarly, theCM system may provide information to remote devices about events thatoccur for the CM system, such as user-initiated events at the computingdevice and/or at a remote/mobile device controlled by a user to interactwith the CM system.

In addition, in at least some embodiments various management is providedfor parental controls (whether such controls are implemented by the CMsystem and/or by one or more other devices being managed, such as amedia center), such as to allow them to be view, turned off/on, andmodified. For example, in at least some embodiments the display ofvarious types of information may be limited or otherwise controlledbased on such controls, such as to modify the displayed channel list(whether on the GUI of the CM system and/or via information presented byanother device being controlled, such as information displayed on atelevision by a media center). In addition, in at least some embodimentssuch parental controls may be controlled in a distinct manner fordifferent devices, such as to specify distinct controls for distincttelevisions (also referred to as being on a “per head” basis).

In addition, the first timebar may be controlled in various manners invarious embodiments. For example, arrows on the right and left of thefirst timebar may be provided to allow the user to control the firsttime period of the first timebar or to otherwise modify the viewablearea of the first timebar, and further to move the “thumb” within thatviewable area, or to instead modify the viewable area of the firsttimebar by dragging the thumb to the far right or far left of the firsttimebar to cause the first time period to change. In such embodiments,the thumb may stay where it is left, with the second time period for thesecond timebar being adjusted accordingly to reflect the new selectedtime. Alternatively, the “thumb” display may be maintained in oneposition (e.g., the center), with a pull on it (e.g., to the right orleft) causing it to temporarily move at least slightly and the firsttime period to slide accordingly until a desired current start timebecomes visible. When the user halts the pulling, the “thumb” thenreturns to the original position, while the first time period is changedsuch that the new start time is in place under the thumb and the secondtime period of the second timebar is updated accordingly. A variety ofsimilar types of manipulations may be used in other embodiments.

Thus, as discussed below, the previously described example GUI of anembodiment of the CM system provides a variety of types of contentinformation and content manipulation functionality. The following is asummary of the capabilities of an example embodiment of the GUI, whichin this example embodiment provides various types of information andfunctionality for television-related content.

A. The View Control Area

a. Available Views For TV Programming Content

-   -   Guide (provides a guide-based experience with the channels        listed at left and time on the horizontal axis)    -   Icon (provides an icon-based view that displays as many Channel        Icons as possible for quick visual recognition and selection)    -   Channel (provides a look ahead for a selected channel, and        maintains the “time ahead” state while moving across channels)    -   List (as a grouped, ordered list, and does not use the        Navigation/Timebar as it displays information from the entire 2        week period, and not just at a specific point in time)

When switching between views, typically maintain any filter or searchcriteria.

b. Filters

May allow a filter to be applied to any view of TV Programming

-   -   May provide some default filters, such as to associate a first        color with Sports and another with Movies        -   May allow a user to associate or disassociate a highlight            color with a default filter    -   Create, edit or delete a number (e.g., up to 20) of custom        filters, such as based on the following attributes    -   Example metadata attributes for use as types of criteria:        -   Keyword        -   Title        -   Cast/Crew        -   Genre        -   Channel (Name or Number)        -   Star Rating        -   MPAA or TV Rating        -   First run        -   HDTV        -   Audio            -   CC            -   DVS            -   SAP/ESP            -   Surround sound        -   Previously recorded (On disk, Watched, deleted)    -   Pay Per View    -   On Demand

c. Quick Search

May provide a Quick Search capability that allows searches on basiccriteria

-   -   Example criteria:        -   Keyword        -   Cast/Crew        -   Genre        -   Hide Repeats        -   HDTV    -   Pay Per View    -   On Demand    -   If a filter or previous search is applied when the user invokes        the Quick Search interface, may auto-populate the fields with        any attributes from the filter that match the fields available        in the Quick Search.    -   If an applied filter contains attributes that are not covered by        the Quick Search, such as MPM rating, then when the Quick Search        is populated, they are not included. Likewise, if the user        changes the criteria (by adding, editing, or removing attributes        in the Quick Search interface) and then saves this group of        criteria as a new Filter, it will only include Quick Search        fields.    -   Save search criteria as a custom filter

d. Advanced Search

May provide an Advanced search that allows searches on any Criteria

-   -   Example criteria:        -   Keyword        -   Title        -   Cast/Crew        -   Genre        -   Channel (Name or Number)        -   Star Rating        -   MPM or TV Rating        -   Hide repeats        -   HDTV        -   Audio    -   CC    -   DVS    -   SAP/ESP    -   Surround sound        -   Previously recorded (On disk, Watched, deleted)    -   Pay Per View    -   On Demand    -   Allow search criteria to be saved as a custom filter    -   If a filter or previous search is applied when the user invokes        the Advanced Search interface, may auto-populate the fields with        any attributes from the filter that match the fields available        in the Quick Search.

e. Search History

May provide a way to view past searches.

May provide a way to select a past search and to search using thosesearch criteria.

-   -   May allow only one search to be selectable at a time.    -   Double click on a past search to run the selected search.    -   Press the “Apply Button” to run the selected search.    -   Press the “Save Button” to save the selected search as a custom        filter    -   Press the “Clear Button” to display the complete dataset    -   Press the “Close” button to close the search interface and        return to the complete dataset

f. First Timebar

May provide a way to navigate through time (For Guide, Icon, and ChannelViews), such as to:

-   -   Jump to a day    -   Jump to a time    -   Jump to the current date and time    -   Change the displayed time scale between hours and days    -   Visually present filter or search results over time (e.g., for        highlighting recordings in the Scheduled Recordings area, or for        photos)    -   Visually present two weeks of program data.    -   Enable navigation between a Y2 hour block of programming that is        “on now” and the end of two weeks of program data.    -   Visually indicate where “on now” is in the context of two weeks        of program data.    -   Timebar UI Element behavior:        -   Keep the date/time indicator (thumb) on the same date and            time (i.e. the thumb moves with the selected date)        -   The date/time indicator (thumb) actually disappears out of            the visible bounds of the timebar—to preserve the selected            date and time—since the selected date time is out of the            visible bounds.

g. Other:

-   -   if adding “on now” when the user is viewing the Guide, Channel,        or Icon view, snapping back to “On Now” is appropriate and        desirable.

2. The Scheduled Recordings Tab

The Scheduled Recordings Tab offers functionality similar to other tabs,except that it is filtered to only show those programs that arescheduled to record.

3. The Recorded Content Tab

The Recorded Content Tab is different in that it may only have amodified List view, although filtering and searching may remain thesame.

B. The Detail Area

1. Capabilities

-   -   Display detailed information about a selected show, including        (but not limited to) the title, description, rating information,        and channel information.    -   Display and enable actions that are appropriate for the state of        a selected show.    -   Use criteria of the selected show to find other shows with the        same criteria        -   Indicate which fields can be used        -   Optionally allow only fields and values that are available            in the Quick Search to be used        -   Populate the Quick Search with the new criteria        -   Display the Quick Search (if it is not already displayed)        -   Replace all previous criteria with the new criteria        -   Give focus to the Apply action but do not apply the search            yet            -   a. Data Elements

Below are examples of data fields. Channel Number Station Icon/LogoCallsign Affiliate (if no affiliate, then Channel/Network name Title:SubTitle StarRating (ReleaseYear) [action] EpisodeTitle: Description(IsRepeat) [action] Actors (4 max), Director, CastCrew (1) AirTime -EndTime (Duration) Genre(s), SubGenre(s)MPAARating/ParentalRating/ExpandedParentalRating/ ExpandedRatingCountryOrigin IsStereo, IsJoinedInProgress, IsCableIntheClassroom,IsSap, IsEnhanced, IsThreeD, IsLetterbox, IsHdtv, IsDolby, IsDvs,IsClosedCaptioned, IsSubtitled IsRecorded/IsToBeRecorded

b. Buttons & Actions

Below are examples of states of a program and buttons that areapplicable for each state. On Now, Future, Future, Previously Not OnNow, Future, Scheduled Scheduled Action Recorded Recording RecordingUnscheduled Program as Series Watch ✓ ✓ Play ✓ Record ✓ ✓ Once Record ✓✓ ✓ Series Cancel ✓ ✓ ✓ Recording Delete ✓C. The View Area

1. Capabilities

Can List Programs

-   -   Over Time        -   At a given date/time        -   In a date/time range    -   In a specific state    -   With specific criteria        -   That match search or filter criteria

Can Differentiate between programs

-   -   Highlight based on criteria (filter)    -   Indicate state        -   Recorded        -   On Now (not recording)        -   Currently recording        -   In the future        -   Scheduled to record (single/series)    -   Denote selection        -   Focus        -   Selection

Can Act on program

-   -   Get more information (e.g., from a third-party)    -   Watch/Play    -   Schedule to Record

Can Provide different views of programs

-   -   Guide—programs on channels over time    -   Icon—scan icons visually    -   Channel—looking forward on a channel    -   List—lisVsort/group

Can Change between Views

Can Adjust the granularity of information

-   -   Small—channel and title    -   Medium—more info    -   Large—detailed

Can Associate a level of granularity on a per view basis

2. Views

There are four views. The first three, Guide, Icon, and Channel, aredependant on a specific point in time and use that as a starting point.The List view is a list of programs that can be sorted and grouped, andis not dependant on a specific time—rather it lists all the live andupcoming programs. As a user transitions from one view to the next, thetime in the first timebar remains constant (even when the user goes toand from the List View), as does the program in the detail area.

a. Guide View

The guide view presents programs in the context of channel and time.

-   -   If a filter or search is applied, only channels with programs        that match the criteria in the viewable time range should        display.    -   Programs that are on a channel but do not meet the filter or        search criteria should be de-saturated.    -   If there are no programs in the viewable time range that match        the criteria on any channel when a filter or search is applied,        a message could be displayed to communicate this to prevent a        blank screen from being shown.

b. Icon View

The Icon view presents programs that are on at a specific (e.g., ½ hour)point in time. It allows users to recognize channels visually by theirlogos, and then to determine what program is associated with thatchannel.

-   -   If a channel has more than one program on in the selected ½        hour, both programs may display.    -   Only programs (and therefore channels) with a program on in the        specific point of time will display.    -   If there are no programs in the viewable time range that match        the criteria when a filter or search is applied, a message could        be displayed that communicates this.

c. Channel View

The Channel view shows not only what programs are on at a specific time,but also what is coming up on a specific channel.

-   -   The right hand column displays shows on the same channel as the        selected program/channel in the left-hand column.    -   The first show in the right hand column can be, by default, the        show that's on right after the highlighted show in the left-hand        column.    -   When a filter or search is applied, only those channels for        which there are results somewhere in the 2 weeks of program data        may be listed.    -   If, when a filter or search is applied, a channel with a result        in the future doesn't have a program that matches the current        date/time indicated in the time-bar, then it should still        display the title of the program on at the indicated date/time,        but it could be de-saturated.    -   When a filter or search is applied, the subset of channels could        display even if the only programs that fit the criteria are        chronologically before the place where the date/time indicator        in the time-bar is.

d. List View

The List View allows users to quickly sort and group by a variety ofcriteria. It is not dependant on a specific time, and the First Timebaris not shown.

-   -   Default grouping can be by Title (ascending), and default sort        can be chronological. If the user re-groups or re-sorts, the new        sort/grouping may be maintained.    -   Users can ungroup the list, and regroup it.    -   User can select any column heading to group by that field. Each        criteria has a default sort. The headings and default sorts are:        -   Channel Number—Program Name, Air Time        -   Channel Affiliate/Logo—Program Name, Air Time        -   Program Name—Air Time        -   Record Status (recording, scheduled, not scheduled)—Program            Name, Air Time        -   Repeat—Program Name, Air Time        -   HDTV—Program Name, Air Time        -   Genre (ascending)—Program Name, Air Time        -   MPM Rating—Program Name, Air Time        -   Star Rating—Program Name, Air Time        -   Air Time (ascending)—Program Name        -   Duration (ascending)—Program Name, Air Time    -   User can change the secondary and subsequent sorts by        Shift-clicking a column. Shift-clicking the column again will        reverse the sort.

e. Changes to the List view for the Recordings Tab:

-   -   The “AIRS” column is replaced with “RECORDED ON”    -   The “REC” column is renamed “STATUS” so that it can show the        icon for “scheduled to be deleted”, but it will show a similar        type of data    -   The default sort is by “RECORDED ON”, and the increment will be        the Day (e.g., Tues 3/20, Mon 3/19, etc.) in reverse        chronological order, with the secondary sort (on the programs        within a day group) of time (reverse chronological). Thus, the        last thing recorded will be at the top of the first group.    -   A “VIEWED” column may also be provided.

3. Levels of Granularity

The Guide, Icon, and Channel views can be set to one of three size“resolutions”. Small displays more individual listings, but the leastamount of information about each. Large displays the most informationabout each, but displays fewer individual listings. It is preferable toshow Episode Title for sports events in all resolutions. Channel ChannelData Element (included Guide Icon (L Column) (R Column) in Detail Area)S M L S M L S M L S M L Channel Number ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ Callsign ✓ ✓ ✓✓ ✓ ✓ Station Icon/Logo ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ Affiliate (if no affiliate,then ✓ ✓ ✓ ✓ ✓ ✓ Channel/Network name) IsRecorded/IsToBeRecorded ✓ ✓ ✓ ✓✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ Title ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ SubTitle ✓ ✓ ✓ ✓StarRating ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ Release Year ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓Episode Title ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ Description IsRepeat Actors (4 max)Director Crew (1) AirTime ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ EndTime ✓ ✓ ✓ ✓ ✓ DurationGenre (s) MPAARating/ParentalRating ✓ ✓ ✓ ✓ ExpandedParentalRating/ExpandedRating CountryOrigin IsStereo IsJoinedInProgressIsCableInTheClassroom IsSap IsEnhanced IsThreeD IsLetterbox IsHdtv ✓ ✓ ✓✓ IsDolby IsDvs IsClosedCaptioned ✓ ✓ ✓ ✓ IsSubtitledD. Sidebar Control Area

1. Capabilities

Display Program Info

-   -   Program on TV now        -   (Tuned or Playback of a recorded program)        -   (may be the program that corresponds to the current point in            the buffer, as the live buffer can contain multiple            programs)            -   Title            -   Channel            -   Start time (or “presentation time”) & Duration                Display the Buffer/Recording    -   Buffer/Recording length    -   Place in Buffer/Recording        -   Time marker    -   Current Transport Control    -   Beginning/End of Buffer        Provide Remote Control Buttons    -   Transport Controls    -   D-pad        Status—List the following in chronological order        (Channel, Title, Record Status & Start Time)    -   Next three programs to be recorded    -   Any programs that are currently recording    -   Last three programs that were recorded        E. Input Devices

Left-click should select a program such that it would both have focusand be selected. Using the arrow keys would move the focus around(maintaining the previously made selection) and Enter would select it.

F. Table Of Functions

The following table of functions takes a top-down approach to the GUI.Starting at the top and working toward the bottom, this table lists thelocation on the GUI of various controls, names of the GUI element, andhow they function. Name of GUI Location on GUI element Function PrimaryUser interface When the GUI first appears, the default Navigation tabsappears for screen is Live TV, Guide View. first time Primary TELEVISIONWhen the user clicks the TELEVISION tab, Navigation tabs tab the defaultscreen is Live TV, Guide View. Secondary LIVE TV tab When the userclicks the LIVE TV tab, the Navigation tabs Guide View screen appears.View Control Guide View Click the Guide View button to display a TVarea, on the button Guide-like grid of program bubbles. Toolbar ViewControl Guide View Click the arrow next to the Guide View area, on thebutton drop- button to display the menu. Menu selections Toolbar downmenu are small, medium, or large. If you select Small, the programbubbles in the TV grid will show only the program title. By selectingMedium, the program bubbles expand to display information about theprograms. By selecting Large, the program bubbles expand to display themaximum amount of information about the programs. View Control Icon ViewClick the Icon View button to display a grid area, on the button ofchannels by channel icon. Toolbar View Control Icon View Click the arrownext to the Icon View area, on the button drop- button to display themenu. Menu selections Toolbar down menu are small, medium, or large. Ifyou select Small, the maximum number of channel icons will appear. Byselecting Medium, fewer channel icons appear. However, the expandedchannel icons display the name of the programs per channel. By selectingLarge, the program bubbles expand to a size greater than medium. ViewControl Channel View Click the Channel View button to display a area, onthe button list of programs by channel. On the right Toolbar side is theChannel Paddle area which lists upcoming programs based on which channelis selected. Use the Channel Paddle buttons to scroll forward andbackward in time. View Control Channel View Click the arrow next to theChannel View area, on the button drop- button to display the menu. Menuselections Toolbar down menu are small, medium, or large. View ControlBrowse button Click the Browse button to display a list of area, on thechannels. Each channel has an Expand Toolbar button next to it that,when clicked, displays a list of upcoming programs. The First Timebardoes not display when this view is active. View Control Filters drop-All is the default selection. area, on the down menu See below for theother filters. Toolbar (see below) Filters drop-down All (No Filter)Click All to display all of the programs. menu Filters drop-down MoviesClick Movies to display programs that are menu categorized as movies.Filters drop-down Sports Click Sports to display programs that are menucategorized as sports. Filters drop-down News Click News to displayprograms that are menu categorized as news. Filters drop-down MusicClick Music to display programs that are menu categorized as music.Filters drop-down Kids Click Kids to display programs that are menucategorized as child-oriented. Filters drop-down Custom Click CustomFilters . . . to open the Filter menu Filters . . . Wizard. View ControlManage Click Manage Filters to open the Filter area, on the FiltersWizard. Toolbar View Control Find a Click Find a Program to open theSearch area, on the Program Control area. Toolbar, in the button SearchControl area Search Control Quick Search The Quick Search tab appears bydefault. area tab To use Quick Search: In the Look for text box, typewhat you are looking for, for example, actor Tom Cruise. In the Genretext box, type a genre or select one from the drop-down menu. ClickApply. If any programs featuring Tom Cruise are on or upcoming, thelisting will appear in the main content area of the UI. List of Genres:Action Adults Only Adventure Animals Animated Anime Anthology Autoracing Basketball Biography Bus./financial Children Comedy Comedy-dramaComputers Cooking Crime Crime drama Docudrama Documentary DramaEducational Entertainment Event . . . Search Control Quick Search areatab area buttons and boxes: Quick Search tab Hide Repeats Click the boxnext to Hide Repeats to block area buttons and box repeated programsfrom being displayed in boxes: the main content area. Quick Search tabHDTV box Click the box next to HDTV to include area buttons and programsoffered in HDTV. boxes: Quick Search tab Apply button Click Apply todisplay results in the main area buttons and content area. boxes: QuickSearch tab Clear button Click Clear to clear search criteria. areabuttons and boxes: Quick Search tab Save button Click Save to savesearch criteria. You will area buttons and be prompted to name this as anew filter. boxes: Quick Search tab Close button Click Close to closethe Search Control area buttons and area. boxes: Advanced Find all Clickone or many check boxes in the Find Search boxes programs box, allprograms: box. The selected search and buttons which rule(s) will beadded to the Search rules contains description: box. multiple checkboxes of search criteria rules. Find all programs That belong to Clickthe That belong to the <specific box in the the <specific genres> genrecheck box. The rule appears Advanced genres> in the Search rulesdescription box. Search tab genre Click <specific genres> in the Searchrules description box to open the Genre Filter box. In the Genre Filterbox, select one or many genres. Click the > arrow. Click OK. Thegenre(s) you selected become part of the search criteria. You can changethe search criteria at any time by clicking the blue underlined text inthe rule you want to change, then modifying the filter that opens. Findall programs That feature Click the That feature <people> in the castbox in the <people> in and crew check box. The rule appears in Advancedthe cast and the Search rules description box. Search tab crew Click<people> in the Search rules description box to open the Cast and CrewFilter box. In the Add new text box, type the name of the cast or crewmember you want to search for. Click Add. Repeat steps three and four ifyou searching for more than one person. Click OK. Any names you addbecome part of the search criteria. You can change the search criteriaat any time by clicking the blue underlined text in the rule you want tochange, then modifying the filter that opens. Find all programs That arerated Click the That are rated <rating> check box in the <rating> box.The rule appears in the Search rules Advanced description box. Searchtab Click <rating> in the Search Rules description box to open theParental Rating Filter box. In the Select all programs with a parentalrating drop-down menu, select no higher than or no lower than. In theMovies drop-down menu, select G, PG, PG-13, R, or NC-17. In theTelevision drop-down menu, select TVY, TVY7, TVY7FV, TVG, TVPG, TV14, orTVMA. Click the check box next to Exclude unrated programs to preventunrated programs from appearing in the guide. Click OK. The ratings youadd become part of the search criteria. You can change the searchcriteria at any time by clicking the blue underlined text in the ruleyou want to change, then modifying the filter that opens. That have aClick the That have a <stars> star rating <stars> star check box. Therule appears in the Search rating rules description box. Click <at leasta 0.0> in the Search Rules description box to open the Star RatingFilter box. In the first All programs with a star rating drop-down menu,select equal to or at least. In the second All programs with a starrating drop-down menu, select 0 through 4. Click OK. The star rating youadd becomes part of the search criteria. You can change the searchcriteria at any time by clicking the blue underlined text in the ruleyou want to change, then modifying the filter that opens. Appearing onClick the Appearing on <channel> check <channel> box. The rule appearsin the Search rules description box. Click <channel> in the Search rulesdescription box to open the Channel Filter box. In the AvailableChannels list, select one or more channels. Use Shift + click or CTRL +shift to select multiple channels. Click the > arrow to add channels tothe Selected Channels list. Click OK. The channels you add become partof the search criteria. You can change the search criteria at any timeby clicking the blue underlined text in the appropriate rule, thenmodifying the filter that opens. With <specific Click the With <specificwords> in the title words> in the check box. The rule appears in theSearch title rules description box. Click <specific words> in the Searchrules description box to open the Title Filter box. In the Add new textbox, type the words or phrases you want to search for. Click Add. Repeatsteps three and four if you searching for more than one term. Click OK.Any terms you add become part of the search criteria. You can change thesearch criteria at any time by clicking the blue underlined text in therule you want to change, then modifying the filter that opens. With<specific Click the With <specific words> in the words> in thedescription check box. The rule appears in description the Search rulesdescription box. Click <specific words> in the Search rules descriptionbox to open the Description Filter box. In the Add new text box, typethe words or phrases you want to search for. Click Add. Repeat stepsthree and four if you searching for more than one term. Click OK. Anyterms you add become part of the search criteria. You can change thesearch criteria at any time by clicking the blue underlined text in therule you want to change, then modifying the filter that opens. That arenot Click the That are not repeats check box. repeats The rule appearsin the Search rules description box and becomes part of the searchcriteria. That are Click the That are HDTV check box. The HDTV ruleappears in the Search rules description box and becomes part of thesearch criteria. That have Click the That have <audio-visual options><audio-visual check box. The rule appears in the Search options> rulesdescription box. Click <audio-visual options> in the Search rulesdescription box to open the Audio- Video Filter box. Select ClosedCaptioned, DVS, SAP/ESP, Stereo, or Subtitled. Click OK. Any of theaudio-visual options you add become part of the search criteria. You canchange the search criteria at any time. Click the blue underlined textin the rule you want to change, then modify the filter that opens.Advanced Apply button Click Apply to display results in the main Searchbuttons content area. Advanced Clear button Click Clear to clear searchcriteria. Search buttons Advanced Save button Click Save to save searchcriteria. You will Search buttons be prompted to name this as a newfilter. Advanced Close button Click Close to close the Search ControlSearch buttons area. Search History Select a This box displays all ofthe prior search tab boxes and search and criteria. buttons click Applybox Search History Apply button Clicking Apply performs the selected tabboxes and search. buttons Search History Clear button Clears searchcriteria. tab boxes and buttons Search History Save button Clicking Saveopens Save as Filter box. tab boxes and buttons Search History Closebutton Click Close to close the Search Control tab boxes and area.buttons First Timebar Now button Click the Now button to displayprograms playing now. First Timebar Hour View Click the Hour View buttonto display the button timebar in hour increments. First Timebar Day ViewClick the Day View button to display the button timebar in dayincrements. First Timebar Scroll left Click the left scroll arrow toscroll back in arrow time. The stopping point is the current time inthis example embodiment. First Timebar Thumb Click and hold the thumb tomove back and forward in time. First Timebar Time span Viewed either inhour or day increments. First Timebar Scroll right Click the rightscroll arrow to move forward arrow in time. The stopping point is twoweeks from the current time in this example embodiment. Details areaDefault is for this area to be expanded Details area Watch Now buttonDetails area Record One Time button Details area Record Series buttonDetails area Hide Details arrow Main content Program info Left-click toselect, right-click to open drop- area bubble down menu that displays“Watch Now,” “Record Once,” “Record Series,” “Alert,” and “View Size”shortcuts. Sidebar On Now window Sidebar Buffer Sidebar/ Live buttonTransport Controls TKR button device- specific button Navigation buttonsReplay button Skip button Rewind button Play button Forward button Recbutton Pause button Stop button Channel up/down Star * Menu buttonSidebar/Recorder Currently Status area Recording Upcoming RecordingRecent Shows the last three programs that were Recordings recorded, dateof recording and length of program. Sidebar Display Program Info Programon TV now (Tuned or Playback of a recorded program) (typically is theprogram that corresponds to the current point in the buffer, as the livebuffer can contain multiple programs) Title Channel Start time &Duration Display the Buffer/Recording Buffer/Recording length Place inBuffer/Recording Time marker Current Transport Control Beginning/End ofBuffer Provide Remote Control Buttons Transport Controls D-pad Status -List the following in chronological order (Channel, Title, Record Status& Start Time) Next three programs to be recorded Any programs that arecurrently recording Last three programs that were recorded

G. Table of Functions for Mouse/Touchpad/Eraserhead Mouse/Touchpad/Eraserhead Function Notes Mouse-overs Display tool tips and/or shortcutkey combos Left-Click Left-click should select the program, so it wouldboth have focus and be selected. Using the arrow keys would move thefocus around (maintaining the previously made selection) and Enter wouldselect it.

H. Table of Functions for Keyboard Key Function Notes Tabbing Arrow KeysNavigates from program bubble to program bubble. Using the arrow keysmoves the focus around (maintaining the previously made selection).Enter Enter selects the program that has the focus. Ctrl+ . . . Used inshortcut key combos for view control buttons and to open find a programbox.

Reference throughout this specification to “one embodiment” or “anembodiment” means that a particular feature, structure, orcharacteristic described in connection with the embodiment is includedin at least one embodiment. Thus, the appearances of the phrases “in oneembodiment” or “in an embodiment” in various places throughout thisspecification are not necessarily all referring to the same embodiment.Furthermore, the particular features, structures, or characteristics maybe combined in any suitable manner in one or more embodiments.

In addition, the described techniques are applicable to architecturesother than a set-top box architecture or architectures based upon theMOXI™ system. For example, an equivalent system and applications can bedeveloped for other DVRs and STBs. The methods and systems discussedherein are applicable to differing protocols, communication media(optical, wireless, cable, etc.) and devices (such as wireless handsets,electronic organizers, personal digital assistants, portable emailmachines, game machines, pagers, navigation devices such as GPSreceivers, etc.) able to receive and record such content.

In the description, numerous specific details have been given to providea thorough understanding of embodiments. The embodiments can bepracticed without one or more of the specific details, or with othermethods, components, materials, etc. In other instances, well-knownstructures, materials, or operations are not shown or described indetail to avoid obscuring aspects of the embodiments. Thus, it will beappreciated that, although specific embodiments have been describedherein for purposes of illustration, various modifications may be madewithout deviating from the spirit and scope of the invention.Accordingly, the invention is not limited except as by the appendedclaims and the elements recited therein. In addition, while certainaspects of the invention are presented below in certain claim forms, theinventors contemplate the various aspects of the invention in anyavailable claim form. For example, while only some aspects of theinvention may currently be recited as being embodied in acomputer-readable medium, other aspects may likewise be so embodied.

1. A method for a computing device to present information aboutmultimedia content via a graphical user interface, the methodcomprising: receiving metadata information for each of a plurality ofindicated pieces of multimedia content that are each associated with atleast one time-related characteristic; determining a plurality of theindicated pieces of multimedia content that have associated time-relatedcharacteristics that correspond to a selected period of time, andidentifying one or more other of the indicated pieces of multimediacontent that have associated time-related characteristics that do notcorrespond to the selected period of time; and displaying to a user ofthe computing device a graphical user interface having information aboutpieces of multimedia content available for presentation, the displayedgraphical user interface including at least some of the receivedmetadata information for each of the determined plurality of pieces ofmultimedia content, the displayed graphical user interface furtherincluding a first timebar that includes indications of times outside theselected period of time and that includes a graphical indicator for eachof at least one of the identified one or more other pieces of multimediacontent, each graphical indicator for an identified piece of multimediacontent being displayed on the first timebar at an indicated time thatcorresponds to the associated time-related characteristic of theidentified piece of multimedia content, so that metadata information isdisplayed for pieces of multimedia content that have time-relatedcharacteristics corresponding to the selected period of time and so thatindications are displayed for at least some pieces of multimedia contentthat have time-related characteristics outside the selected period oftime.
 2. The method of claim 1 wherein the pieces of multimedia contentinclude any one or combination of music, photograph, image, video,advertisement, news clip, presentation, article, videogame, and Internetcontent, wherein the associated time-related characteristic of thepieces of multimedia content is one of a record date and time-of-day, arelease date and time-of-day, a broadcast date and time-of-day, areceipt date and time-of-day, a creation date and time-of-day, arevision date and time-of-day, and a download date and time-of-day,wherein the pieces of multimedia content include pieces of multimediacontent from a plurality of multimedia content sources, and wherein thereceived metadata information includes information for each of thepieces of multimedia content that includes a title and genre and one ormore people associated with the pieces of multimedia content.
 3. Themethod of claim 1, further comprising receiving one or more indicationsfrom the user of one or more criteria that can be related to at leastone piece of multimedia content of interest, and wherein the identifyingof the one or more other pieces of multimedia content is performed suchthat the identified one or more pieces of multimedia content eachsatisfy the indicated criteria, so that the graphical indicatorsdisplayed in the first timebar reflect pieces of multimedia content thatsatisfy the indicated criteria.
 4. The method of claim 3 wherein theindicated criteria include one or more of a specified title value, aspecified date value, a specified associated person value, a specifiedtext value, a specified relationship value, a specified alphabeticalvalue, a specified rating value, or a specified categorization value,including a value that pertains to at least one of a genre, a deviceused to create the content, a person who created the content, a sourcefrom which the content was acquired, a subject matter of the content, afile size, a color, a number of pixels, a frame rate, a measure ofresolution, a display size of the content, and a use restriction on thecontent, and wherein the identifying of the one or more other pieces ofmultimedia content includes determining that the received metadata forthe identified one or more pieces of multimedia content includes thespecified values.
 5. The method of claim 4, further comprising:modifying the graphical user interface in a manner that the firsttimebar has indications that are different than the indications of timeand that represent at least one of the indicated criteria; anddisplaying a second timebar simultaneously with the first timebar, thesecond timebar including indications that are subsets of the indicationsof the first timebar that represent the at least one of the indicatedcriteria, the second timebar further having a region associatedtherewith that is capable to present metadata information for pieces ofmultimedia content that correspond to the indications of the secondtimebar and that have been organized and manipulated by the user basedon at least one of the indicated criteria.
 6. The method of claim 5wherein displaying the second timebar with the region associatedtherewith that is capable to present metadata information for pieces ofmultimedia content that have been organized and manipulated by the userbased on at least one of the indicated criteria includes presenting themetadata information in the region according to a hierarchicalrelationship between the metadata information.
 7. The method of claim 1,further comprising displaying an appearance, of the metadata informationfor pieces of multimedia content that have time-related characteristicscorresponding to the selected period of time or of the at least somepieces of multimedia content that have time-related characteristicsoutside the selected period of time, in a similar manner for similarmultimedia content types and in a different manner for differentmultimedia content types.
 8. The method of claim 1, further comprisingproviding status information pertaining to at least one of the pieces ofmultimedia content.
 9. The method of claim 8 wherein providing thestatus information includes providing status information associated witha plurality of devices that respectively control presentation of thepieces of multimedia content, at least some of the plurality of devicesbeing associated with different multiple first timebars on the graphicaluser interface, each first timebar further being associated with asecond timebar that can be displayed simultaneously with theirassociated first timebar, the second time bar having indications thatare subsets of the indications of their associated first timebar. 10.The method of claim 1 wherein the graphical indicators included in thefirst timebar are displayed in such a manner as to have differingappearances, the appearance of each graphical indicator for anidentified piece of multimedia content being specified so as to indicatea status of the identified piece of multimedia content relative to oneor more statuses of other identified pieces of multimedia content. 11.The method of claim 1 wherein at least some of the indications in thefirst timebar of the times outside the selected period of time are eachuser-selectable, the method further comprising: receiving an indicationof a selection by the user of one of the user-selectable indications oftime in the first timebar; selecting a new period of time based on theselected time indication; and updating the displayed graphical userinterface to include at least some of the received metadata informationfor each piece of multimedia content whose associated time-relatedcharacteristic corresponds to the selected new period of time.
 12. Themethod of claim 1 wherein the indicated times for the first timebarrepresent a first time period and wherein the selected time period is asecond distinct time period that is selected as a subset of the firsttime period, wherein the displayed graphical user interface furtherincludes a second timebar that is displayed simultaneously with thefirst timebar and that indicates a plurality of segments of time withinthe second time period, wherein the displayed graphical user interfacefurther includes a region associated with the second timebar thatincludes indications of a plurality of multimedia content sources,wherein the determined plurality of pieces of multimedia content includepieces of multimedia content from the plurality of multimedia contentsources whose associated time-related characteristics correspond to oneof the plurality of segments of time, and wherein the at least somemetadata information about the determined plurality of pieces ofmultimedia content that is included in the displayed graphical userinterface is displayed in a grid format within the region associatedwith the second timebar and includes detail information for each of thedetermined plurality of pieces of multimedia content.
 13. Acomputer-readable medium whose contents enable a computing device topresent information about multimedia content via a user interface, byperforming a method comprising: receiving information related to aplurality of pieces of multimedia content that are each associated withat least one organizational characteristic having a plurality of values;and presenting a user interface to provide information regarding thepieces of multimedia content, by: rendering a first bar on the userinterface that corresponds to a first group of the values of theorganizational characteristic; rendering a region on the user interfacethat corresponds to a second group of the values of the organizationalcharacteristic that is a subset of the first group; populating theregion with the received information for pieces of multimedia contentthat have associated organizational characteristic values correspondingto the second group; and adding one or more indicators to the renderedfirst bar that correspond to pieces of multimedia content that haveassociated organizational characteristic values corresponding to valuesin the first group that are not in the second group.
 14. Thecomputer-readable medium of claim 13 wherein the organizationalcharacteristic is one of time, one or more predefined types ofrelationships between pieces of content, and one or more categorizationtypes.
 15. The computer-readable medium of claim 13 wherein thecomputer-readable medium is a memory of the computing device and/or is adata transmission medium transmitting to the computing device agenerated data signal containing the contents.
 16. The computer-readablemedium of claim 13 wherein the contents are instructions that whenexecuted cause the computing device to perform the method.
 17. Acomputing system configured to present information about multimediacontent, comprising: a display; and a content management systemconfigured to present on the display a graphical user interface havinginformation about pieces of multimedia content, the presented graphicaluser interface including a first timebar that corresponds to a firsttime period and including detail information for each of a plurality ofpieces of multimedia content associated with a second time period, thefirst timebar including one or more graphical indicators correspondingto one or more pieces of multimedia content that are each associatedwith a portion of the first time period that is outside of the secondtime period.
 18. The computing system of claim 17, further comprising adevice to control presentation of pieces of multimedia content on one ormore presentation devices, and wherein the presented graphical userinterface further includes user-selectable controls to allow a user tocontrol the presentation of certain pieces of multimedia content on theone or more presentation devices via instructions sent to the device.19. The computing system of claim 17 wherein the content managementsystem includes software executing in memory of the computing system.20. The computing system of claim 17 wherein the content managementsystem consists of a means for presenting on the display a graphicaluser interface having information about pieces of multimedia content,the presented graphical user interface including a first timebar thatcorresponds to a first time period and including detail information foreach of a plurality of pieces of multimedia content associated with asecond time period, the first timebar including one or more graphicalindicators corresponding to one or more pieces of multimedia contentthat are each associated with a portion of the first time period that isoutside of the second time period.